看板 AndroidDev 關於我們 聯絡資訊
想請問可不可以在BroadcastReceiver中改變程式的標題? public class MyReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { //setTitle("新標題"); } } 目前想到的做法是用跨class的全域變數把this傳到 BroadcastReceiver 裡面去,但這樣子又要為了改個 標題多寫一個全域變數的class,不知道有沒有比較簡單的方法? ↑此方法是錯誤的,沒辦法做出來 -- 我是麵T,哩賀 http://ppt.cc/-eS5 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.227.98.87
typepeter:用intent加share preference 03/08 15:35
您的意思是指: TIME_TICK 觸發 BroadcastReceiver (非 Activity 頁面), 接著 BroadcastReceiver 去改寫 SharedPreferences 任何的一個值, 然後在 Actuvity 頁面中的 OnSharedPreferenceChangeListener 被觸發, 於是可以 setTitle 這樣子嗎? 但我嘗試許久, OnSharedPreferenceChangeListener 沒辦法被觸發, 網路上是說這個 Listener 會被回收,無法一直監聽。 最後找到了這段話: use instance field for listener 請問該怎麼 instance field ?
tac0wu:Broadcast receiver as inner class of Activity? 03/08 19:11
BearrrXD:你的receiver放在activity就可以改了不是嗎? 03/08 21:23
因為編譯器自動幫我新增一個 .java 檔,所以沒想過可以放一起 ... 此方法試過可以成功,謝謝。 ※ 編輯: noodleT 來自: 61.227.98.87 (03/08 22:28)