簡體   English   中英

如何使用 RemoteViews getText().toString() a TextView?

[英]How Do I getText().toString() a TextView Using RemoteViews?

我是第一次開發小部件,與構建應用程序相比,remoteviews 有點令人困惑。

我明白這部分...

RemoteViews views = new Remoteviews(context.getPackageName(), R.layout.my_widget_layout);
views.setTextViewText(R.id.myTV, "Hello World");

現在下一個對我來說有點復雜。 我希望小部件上的按鈕傳遞 TextView 文本並將其顯示在吐司上。

這就是我開始的...

Intent myIntent = new Intent(context, myReceiver.class);
PendingIntent myPendingIntent = PendingIntent.getBroadcast(context, 0, myIntent, PendingIntent.FLAG_UPDATE_CURRENT);
views.setOnClickPendingIntent(R.id.myButton, myPendingIntent);

我的 Class(這是我需要幫助的地方!)

public static class myReceiver extends BroadcastReceiver{

Override
public void onReceive(Context context, Intent intent){
Toast.makeText(context, (HELP! I need to getText().toString() from the R.id.myTV), Toast.LENGTH_SHORT).show();
}
}

謝謝! 非常感激!

您可以通過 putStringExtra 方法將要顯示的文本添加到意圖中,然后像這樣提取額外的字符串:

    @Override
    public void onReceive(Context context, Intent intent) {
        AppWidgetManager mgr = AppWidgetManager.getInstance(context);
        if (intent.getAction().equals(check-your-desired-action-here)) {
            String textThatYouWantToDisplay = intent.getStringExtra("name-of-the-desired-item");
            Toast.makeText(context,textThatYouWantToDisplay , Toast.LENGTH_SHORT).show();
        }
        super.onReceive(context, intent);
    }

欲了解更多信息:

這個來自谷歌的示例小部件應用程序

構建應用小部件 android 文檔

意圖 getStringExtra 方法

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM