一个fragment调用另一个Fragment为什么出现空指针啊

找到组织 发布于 2013/08/29 15:29
阅读 4K+
收藏 0

public class Fragment3 extends MyFragment {

private Item item;

public View onCreateView(LayoutInflater inflater, ViewGroup container,

Bundle savedInstanceState) {

    View view= null;

    view= inflater.inflate(R.layout.layout1, null);

    item= new Item(view);

    Fragment1 f1= new Fragment1();

    f1.initText();

    return view;

}

public Item getItem() {

return item

}


public class Fragment1 extends MyFragment {

public View onCreateView(LayoutInflater inflater, ViewGroup container,

Bundle savedInstanceState) {

    View view= null;

    view= inflater.inflate(R.layout.layout1, null);

    return view;

}

public void initText() {

Fragment3 f3= new Fragment3();

System.out.println(f3.getItem()== null);

f3.getItem().text.setText("3456789");

}

}

class Item {

TextView text;

public Item(View view) {

this.text= (TextView) view.findViewById(R.id.text);

}

}

}

我在Fragment3中调用Fragment1为什么这时候说f3.getItem()==null

加载中
0
Alex_Chu
Alex_Chu
getActivity方法可以让Fragment获取到关联的Activity,然后再调用Activity的findViewById方法,就可以获取到和这个Activity关联的其它Fragment的视图了
0
TracyZhang
TracyZhang
看来原理你还不是很清晰,正如一楼所说findViewById()前加上getActivity(),附加一个博客,介绍的挺详细:http://www.cnblogs.com/TerryBlog/archive/2012/02/17/2355753.html
返回顶部
顶部