我想知道,如果我通過intent.putextra訪問變量,那麼如果值通過示例清除了變量清除的變化會發生什麼情況?在Activity中通過Intent.putExtra訪問變量
回答
它非常簡單直接。您需要利用startActivityForResult
,setResult
和onActivityResult
來保持活動之間的值更新。例如:
從當前的活動,開始爲下面的一個新問題:
Intent i = new Intent(this, SomeClass.class);
i.putExtra("value", 1001);
startActivityForResult(i, 1);
在你SomeClass
活動,獲得的價值,改變它,然後返回如下:
int value = getIntent().getIntExtra("value", 0);
value += 100; //changing the value for demo purposes
Intent j = new Intent();
j.putExtra("modified_value", value);
setResult(Activity.RESULT_OK, j);
finish();
現在回到您的父母活動,請執行以下操作以接收修改後的值:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(requestCode == 1){
if(resultCode == Activity.RESULT_OK){
int modified_value = data.getIntExtra("modified_value", 0);
}
}
}
如果我的變量值發生了變化,那麼我必須每次都傳遞新的意圖? –
當然,否則你的父母活動無法知道這些變化。 *文字*類型值不通過引用傳遞。所以這是唯一可以幫助你跟蹤價值的複雜方式。 – waqaslam
Thanx男人,我得到了 –
- 1. 通過intent.putExtra()
- 2. 通過類訪問變量
- 3. 不能通過intent.putExtra
- 4. 如何通過變量變量訪問預定義的變量
- 5. 通過變量訪問「My.Resources」項目?
- 6. 無法通過JavaScript訪問const變量
- 7. 通過動態變量循環訪問
- 8. 通過串聯訪問php變量
- 9. JQuery數組,通過變量訪問?
- 10. 通過變量訪問數據JSF
- 11. 通過coffeescript訪問實例變量
- 12. 如何通過javascript訪問processing.js變量
- 13. 通過Java數組訪問float變量
- 14. 通過webistrano訪問環境變量
- 15. 通過變量不能訪問對象?
- 16. 通過鏈接訪問PHP變量
- 17. 通過服務器訪問變量(Java)
- 18. Unity3D訪問變量通過Xcode設置
- 19. 通過javascript訪問handlebar變量
- 20. android通過類訪問變量
- 21. 通過變量訪問對象屬性
- 22. 通過變量全局訪問控制
- 23. 通過變量訪問Go函數
- 24. 通過內存位置訪問變量
- 25. 通過名稱訪問靜態變量
- 26. 通過變量訪問對象值
- 27. AS3 - 通過變量訪問類信息
- 28. 將數據返回到activity,intent.putExtra或contentprovider?
- 29. 訪問通過靜態方法的私有變量在Java中
- 30. 在Clojure中通過其名稱訪問全局變量
你想做什麼? TLY? – Akshay