当前位置: 代码迷 >> Android >> android fragment明晰启动写法以及在dialog中的应用
  详细解决方案

android fragment明晰启动写法以及在dialog中的应用

热度:17   发布时间:2016-04-28 01:07:31.0
android fragment清晰启动写法以及在dialog中的应用

这几天需要将之前项目用到的一个fragment加入到dialog中

本来这种情况应该是用dialogFragment完成的,不过又不想以后有修改时又要同时改fragment和dialogfragment

于是就决定将原来的fragment塞进dialog中

在之前的尝试中,不知道我有没有写错,我发现fragment不能动态加入dialog的布局中,只能通过静态布局的方法写在dialog的布局文件


由于之前的fragment写得不好,在调试的时候会到遇到onCreateView不成功,导致静态布局有error


看了郭霖大神的书之后,看到了一种解决方案


就是在fragment的onCreateView中,只做inflate view,而不做其他的操作


在自定义的fragment中,定义一个方法(如:refresh),在refresh()中对view进行处理


如:

public class MyFragment extends Fragment {	TextView title;	TextView content;	@Override	public View onCreateView(LayoutInflater inflater, ViewGroup container,			Bundle savedInstanceState) {		// TODO Auto-generated method stub		View view;		view = inflater.inflate(R.layout.fragment_layout,container, false);		title = (TextView) view.findViewById(R.id.dialog_title);		content = (TextView) view.findViewById(R.id.dialog_content);		return view;	}	public void refresh(String title, String content) {		// TODO Auto-generated method stub		this.title.setText(title);		this.content.setText(content);	}}

这样,就保证return view肯定能够被正确返回,在refresh中的debug也会轻松很多


  相关解决方案