@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
super.onUpdate(context, appWidgetManager, appWidgetIds);
for (int i=0;i<appWidgetIds.length;i++){
int awID=appWidgetIds[i];
RemoteViews v=new RemoteViews(context.getPackageName(),R.layout.widgetshow);
.
.
.
Intent in = new Intent("my.app.NOTEEDITOR");
Bundle basket = new Bundle();
*/100*/ basket.putString("textViewText", "test");
in.putExtras(basket);
PendingIntent pi = PendingIntent.getActivity(context, 0, in, 0);
v.setOnClickPendingIntent(R.id.button, pi);
appWidgetManager.updateAppWidget(awID, v);
.
.
.
}
}
但是在标有 / 100 /的行中我希望将我的观看文字放在&#39;文字作为额外的。我希望当我点击窗口小部件中的我的按钮开始一个活动,其中包含一个额外包含的textview文本放在我点击它的按钮上。
对不起那些可怕的英语口语的人
答案 0 :(得分:0)
您无需在窗口小部件中获取TextView的文本。为什么?因为TextView的文本将在另一个地方更改,然后此更改将应用于窗口小部件。 例如,用户可以更改活动中的文本。要在窗口小部件中显示新文本,您可以将其保存在SharedPreferences中并在窗口小部件中获取它。
答案 1 :(得分:0)
我和你有同样的问题。像aTa这样的人完全不知道我的期望是什么。我建议你可以使用sharedPreference来保存放置在android主页小部件上的TextView数据,然后你的活动从中获取数据。这是一个骗子
答案 2 :(得分:-2)
更新您的代码:
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
super.onUpdate(context, appWidgetManager, appWidgetIds);
for (int i=0;i<appWidgetIds.length;i++){
int awID=appWidgetIds[i];
RemoteViews v=new RemoteViews(context.getPackageName(),R.layout.widgetshow);
Intent in = new Intent(paramContext, Caller2.class); ///Activity name Caller2.class you want to start
Bundle basket = new Bundle();
TextView txt=(TextView)findViewbyId(R.id.txtid);
String test = tx.getText().toString();
basket.putString("textViewText", test);
in.putExtras(basket);
PendingIntent pi = PendingIntent.getActivity(context, 0, in, 0);
v.setOnClickPendingIntent(R.id.button, pi);
appWidgetManager.updateAppWidget(awID, v);
}
}
获取更多帮助,请参阅Widget is clicked