我想通过单击fragment2中的按钮来更改fragment1中文本视图中的文本,我设法通过将文本视图声明为static
来实现,因此我可以通过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;
}
答案 0 :(得分:1)
最常见的方法是使用从片段A到片段B的“说话”接口(您需要通过活动进行通信):
http://developer.android.com/training/basics/fragments/communicating.html
您还可以使用像Otto这样的事件总线库,注册要更新的片段,并从更新后的其他片段中注册:
答案 1 :(得分:1)
如user3806331所述,您需要使用接口,请按照链接进行操作,您将找到所需内容。但请注意,对窗口小部件进行静态引用是一种不好的做法,因为在某些情况下可能会导致内存泄漏。 / p>