好吧,這讓我瘋狂。我開發了一個App-widget。一切工作正常。如何從其他活動啓動Android AppWidget的配置活動?
我有一個配置活動,每次在主屏幕上添加一個小部件時都會啓動並且很漂亮。我保存每個部件ID的用戶設置等。
小部件有一些按鈕,其中一個按鈕啓動一個關於信息活動的「關於活動」。
「關於活動」有一個按鈕,我想用它來啓動啓動「關於活動」的小部件標識的配置活動。我想這樣做的原因是因爲我希望用戶能夠配置我的小部件的任何實例的內容,而不必刪除它並再次添加(以啓動配置活動)。
配置活動需要AppWidgetManager.EXTRA_APPWIDGET_ID才能完成作業(保存此特定widgetid的用戶設置),所以當我從另一個活動調用它時,我必須以某種方式傳遞此額外信息。顯而易見的想要做的是這樣的:
startActivity(new Intent(context,act_configure.class).putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, ???));
現在我的問題是哪裏是widgetid?我發現了一百萬種方法來獲取widgetids(數組),但沒有一個關於如何獲得啓動「關於活動」的特定widgetid的線索。
任何有關這方面的幫助都會讓我花費數小時來找到解決方案,值得一提。先謝謝你。
p.s.請原諒我的英語,因爲他們不是我的母語......
那麼我應該得到一些徽章。似乎我問了最困難的android appwidgets問題... – Christos 2012-04-25 13:11:30
爲什麼不把widget ID插入開始你的活動的意圖?所以關於知道id並且可以使用它來開始配置 – zapl 2012-05-01 02:13:20
這正是我想要實現的,但是我找不到widget ID。它只在一個地方,在widget提供者的onUpdate方法中。所以基於這個事實和Cory Chaltron的回答,我終於成功地完成了這項工作。請在接受的答案和我的回答中查看評論。非常感謝你。 – Christos 2012-05-01 19:19:34