当我点击AppWidget时,如何进入我的应用程序

时间:2014-09-12 11:17:14

标签: android performance android-intent android-activity android-fragments

当我点击AppWidget

时,如何进入我的应用程序

我没有看到。关于如何在Android主页中创建小部件的问题,但在疯狂小部件之后如何在点击我没有从任何人那里获得我的应用程序时,请给我指导以实现此目的。

谢谢,

2 个答案:

答案 0 :(得分:1)

由于它是AppWidget设置, onClickListener无法正常工作。相反,您必须在特定视图上设置onClickPendingIntent

请参阅以下代码以了解必要的步骤(您应将此代码放入onUpdate()方法中):

// Inflate the Widget layout
RemoteViews remoteViews = new RemoteViews(context.getPackageName(),
                        R.layout.your_widget_layout);

// Create and set the Intent
Intent intent = new Intent(context, MyClass.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent,
                    PendingIntent.FLAG_CANCEL_CURRENT);

// Add intent to a view (like a button)
remoteViews.setOnClickPendingIntent(R.id.your_button, pendingIntent);

请注意: 代码仅显示相关部分

答案 1 :(得分:0)

正如greenapps所说:
在widged的视图中添加一个监听器(例如:click)
创建一个意图并输入额外信息(例如,点击该项目)
然后开始你的活动。

例如

@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
        //...
        Intent intent = new Intent(context, YourActivity.class);
        PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);

        RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget);
        views.setOnClickPendingIntent(R.id.widget_layout, pendingIntent);
        //...
    }
}