2010-09-10 3 views
1

Я новичок в Android Dev, и это мой первый виджет.Android Widget, не доступен для скачивания

Что должно произойти, когда пользователь нажимает на виджет, он отключается или находится на опции «Мастер синхронизации».

Однако виджет ничего не делает при щелчке и, по-видимому, не может быть нажат.

Это тело кода .java, если оно помогает опубликовать любой другой код, пожалуйста, дайте мне знать.

public class MasterSync extends AppWidgetProvider { 
    /** Called when the activity is first created. */ 
    @Override 

    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { 

    final int N = appWidgetIds.length; 

     // now label the property of the button 
    boolean sync = ContentResolver.getMasterSyncAutomatically(); 

    if (sync){ 

    ContentResolver.setMasterSyncAutomatically(false);} 
    else 

    if (!sync){ 

    ContentResolver.setMasterSyncAutomatically(true); 
    } 

    }} 
+0

Можете ли вы разместить свой вывод логарифма? –

+0

Что такое 'android: minHeight =" "' 'android: minWidth =" "'? – JustCurious

ответ

3

обработки нажмите на виджет занимает немного больше, чем просто одну строку кода - посмотреть на этом уроке - это объясняет основы виджетов, а также как обрабатывать клики:

Hello Widget Tutorial

0

OnUpdate вызывается, когда виджет обновляется, а не при нажатии

+0

Какой метод вызывается при щелчке/постукивании виджета? – hlynur

+0

вам нужно установить ожидающее намерение для клика с помощью RemoteViews.setOnClickPendingIntent. Затем вы можете определить, какое намерение будет отправлено по клику. – Ran

1

OnUpdate вызывается, когда виджет запускается в первый раз или после каждого заданного интервала времени, как указано в XML. Чтобы обработать событие нажатия кнопки, вы можете использовать PendingIntents. Вам необходимо зарегистрировать действие трансляции по нажатию кнопки с помощью PendingIntent, а затем внутри вашего onReceive() вы можете написать свою логику для обработки широковещательной передачи, которая будет запущена при нажатии кнопки.

См. Этот article для фрагмента кода.

Смежные вопросы