Android - 如何知道点击的小部件ID放入int

时间:2015-10-12 15:53:11

标签: android widget android-pendingintent

我有这个代码:

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

    for (int i=0; i< appWidgetIds.length; i++){
        if (first == false){
        lista.addAll(FullList.list);
            first=true;
    }
        views = new RemoteViews (context.getPackageName(), R.layout.my_widget);
        iii = r.nextInt(1007);
        text = lista.get(iii);
        txti[i] = text;

        views.setTextViewText(R.id.tv1, text);
        Intent intent = new Intent(context, MainActivity.class);
        intent.putExtra("N", txti[WidgetID_HERE]);
        PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        views.setOnClickPendingIntent(R.id.widget_layout, pendingIntent);
        appWidgetManager.updateAppWidget(appWidgetIds[i], views);
    }

所以我需要的是当有人点击字段(WidgetID_HERE)上的小部件来放置点击的小部件ID时... 为什么? 所有小部件都包含随机文本,当用户点击小部件时,MainActivity只需要显示该小部件中的文本。

1 个答案:

答案 0 :(得分:0)

你可以试试这个:

        @Override
        public void onClick(View v) {

            String clickedButton = getResources()
                    .getResourceName(v.getId());
        }