簡體   English   中英

片段:通過父級活動直接訪問公用數據->有什么缺點嗎?

[英]Fragment: DIRECT access to common data over parent activity -> any disadvantages?

我正在使用帶有兩個片段的SlidingPaneLayout ...

在左側,我顯示一些常規信息,在右側,則顯示所有其他信息...

如果使用默認方式,將數據按意圖提供給片段,則必須使兩個片段之間的數據保持同步。

那么通過父活動共享數據有哪些不利條件? 有嗎 還是他們不這樣做的原因?

為什么不在片段中使用以下命令:

Data d = ((ParentActivity) getActivity()).getSharedData()

代替

Intent intent = getActivity().getIntent();
Data d = (Data)intent.getExtras().getSerialisable("sharedData");

不要將Activity強制轉換為已知的自定義Activity,而應讓Activity實現一個接口,並在將Fragment附加到Activity時將其強制轉換為該接口。

這樣,片段就不會綁定到活動,只要它提供了接口就可以在另一個活動中重用。

這是Google推薦的方法:

http://developer.android.com/guide/components/fragments.html#EventCallbacks

暫無
暫無

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

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