2013-08-13 3 views
0

Есть ли какая-нибудь работа, чтобы вызвать действие непосредственно с кнопки на виджете? Как красивая кнопка для запуска приложения.Простой виджет с кнопкой для вызова активности или значков на главном экране для вызова действий

Из документа и некоторых ответов здесь view.setOnClickPendingIntent - единственный способ и требует обслуживания. Но мне не нужна услуга, потому что я действительно не обновляю виджет!

На самом деле, моя первоначальная задача довольно проста. Мне нужен значок на главном экране, который вызывает действие, но я не хочу, чтобы этот значок появился в приложении. Я знаю, что могу разместить много значков активности в приложении.

ответ

0

Вам не нужна услуга для этого.

Вы должны просто установитьOnClickPendingIntent в методе onUpdate в вашем приложении AppWidgetProvider.

вот некоторые ссылки, которые показывают, как это может быть сделано, они в основном совпадают с некоторыми изменениями, вы должны попробовать их:

Start activity by clicking on widget

Launching activity from widget

How do I run an Activity from a button on a widget in Android?

How Do I Launch an Activity with Home Widget

Как я уже сказал, нет необходимости в оказание услуг.

здесь пример кода я использовал:

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

    RemoteViews remoteViews=new RemoteViews(context.getPackageName(), R.layout.testwidget); 
    //Intent set with the activity you want to start 
    Intent intent = new Intent(context, MainActivity.class); 


    PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0); 

    remoteViews.setOnClickPendingIntent(R.id.textView1, pendingIntent); 

    appWidgetManager.updateAppWidget(appWidgetIds, remoteViews); 
    } 
+0

Спасибо, JanBo! Я вижу, что большинство примеров имеют «super.onUpdate (контекст, appWidgetManager, appWidgetIds)»; в начале onUpdate, но не ваш, это хорошая практика? Без него я не вижу никакого удара. – wez

+0

Хм, это хорошая практика, чтобы включить его, вот несколько объяснений на нем http://stackoverflow.com/questions/10860793/super-onupdate-in-appwidgetprovider-recommend. Как вы сказали, это работает без него, но его плохая практика в целом. – JanBo

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