我試圖將多個視圖添加到AppWidget(主屏幕小部件)中的ViewFlipper。 這裏是我的代碼:Android Appwidget:爲ViewFlipper中的RemoteViews添加AddOnClickPendingIntent
for (Item item : list) {
RemoteViews rv = new RemoteViews(getPackageName(),
R.layout.widget_item);
rv.setTextViewText(R.id.txtTitle, item.getTitle());
Intent launchIntent = new Intent(this, ActItemViewer.class);
launchIntent.putExtra("id", item.getId());
PendingIntent pendingIntent = PendingIntent.getActivity(
this, id, launchIntent, 0);
rv.setOnClickPendingIntent(R.id.txtTitle, pendingIntent);
views.addView(R.id.viewFlipper, rv);
}
此代碼工作正常,所有項目都顯示在我的小部件。 但是當我點擊ViewFlipper中的一個項目時,ActItemViewer總是以相同的「id」打開。所以我認爲只有第一個PendingIntent被設置。
有什麼辦法讓ViewFlipper中的每個孩子都有不同的onClick事件? 我曾見過一些小工具,例如「Spiegel Online」 - 小工具(德語)或Market-Widget。
這也不是保證是唯一的,也不是之實踐。應該按照arne.jans的答案 – Makibo 2013-07-30 15:07:56