[英]fragment access widget from another fragment in the same activity
我想通過單擊fragment2中的按鈕來更改fragment1中文本視圖中的文本,我設法通過將文本視圖聲明為static
來做到這一點,因此可以通過Fragment1.textv.setText("hi");
來更改文本Fragment1.textv.setText("hi");
,可以嗎,這樣做的最佳方法是什么?
static textv ;
@Override
public View onCreateView( LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final View v = inflater.inflate(R.layout.fragment_frag_beam_rec, container, false);
textv= (TextView)v.findViewById(R.id.textview);
return v;
}
最常見的方法是使用接口從片段A到片段B“說話”(您需要通過活動進行通信):
http://developer.android.com/training/basics/fragments/communicating.html
您還可以使用像Otto這樣的事件總線庫,注冊要更新的片段,並從另一個片段發布更新:
如user3806331所述,您需要使用接口,單擊鏈接即可找到所需的內容。但是請注意,靜態引用窗口小部件是一種不好的做法,因為在某些情況下可能會導致內存泄漏。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.