Framgment加载
1.继承Fragment,重写onCreateView,onActivityCreated方法
//FirstFragment
public class FirstFragment extends Fragment {
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.first_fragment, container, false);
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
FragmentActivity fragmentActivity = getActivity();
fragmentActivity.findViewById(R.id.viewId).setText("123456");
}
}
2.xml文件中添加Layout,id为fragment
Activity创建时使用FragmentManager 加载
//Activity OnCreate
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction transaction = fragmentManager.beginTransaction();
transaction.add(R.id.fragment, new FirstFragment());
transaction.commit();
Fragment之间的替换与参数传递
//FirstFragment
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction transaction = fragmentManager.beginTransaction();
Bundle bundle = new Bundle();
bundle.putString("text","123");
NextFragment fragment = new NextFragment();
fragment.setArguments(bundle);
transaction.replace(R.id.fragment,fragment);
transaction.commit();
//NextFragment
public class FirsrtFragment extends Fragment {
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.next_fragment, container, false);
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
String text = this.getArguments().get("text").toString();
FragmentActivity fragmentActivity = getActivity();
fragmentActivity.findViewById(R.id.mTextView)).setText(text);
}
}
本文详细介绍如何在Android应用中使用Fragment进行界面加载与管理。通过继承Fragment并重写关键方法,实现视图的创建与更新。同时,讲解了如何在Activity中通过FragmentManager加载Fragment,以及Fragment之间的替换与参数传递,为开发者提供实用的代码示例。
3995

被折叠的 条评论
为什么被折叠?



