安卓学习笔记-Fragment-基本使用
发布日期:2021-05-10 17:34:03 浏览次数:11 分类:精选文章

本文共 4283 字,大约阅读时间需要 14 分钟。

Android Fragment ���������������������������

1. Fragment ���������������������

��� Android ������������ Fragment ������������������������������������������������������������������ setArguments ��������������������������������������������������������������������������������� Fragment ������������������������ newInstance ��������������������������� onActivityCreated ��� onViewCreated ��������������������������������������������������������� Fragment ���������������������������

������������

public class AFrament extends Fragment {    private TextView a_textview;    public static AFrament newInstance(String title) {        AFrament aFragment = new AFrament();        Bundle bundle = new Bundle();        bundle.putString("title", title);        aFragment.setArguments(bundle);        return aFragment;    }    @Nullable    @Override    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {        View view = inflater.inflate(R.layout.fragment_a, container, false);        return view;    }    @Override    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {        super.onViewCreated(view, savedInstanceState);        a_textview = view.findViewById(R.id.fragmentA_textview);        if (getArguments() != null) {            a_textview.setText(getArguments().getString("title"));        }    }}

2. Fragment������������������������������������

��� FragmentActivity ��������� Fragment ������������������������������������������

  • ������ FragmentManager ���������������
  • add ������������������ Fragment������ replace ��������������������������������� Fragment���
  • ������������ Fragment ������������������������������������������������ Activity��������������������� Fragment���

������������

public class FragmentActivity extends AppCompatActivity {    private Button button_fragmengchange;    private AFrament aFragment;    private BFragment bFragment;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_fragment);        aFragment = AFrament.newInstance("���������������");        bFragment = new BFragment();        Bundle bundle = new Bundle();        bundle.putString("title", "���������b");        bFragment.setArguments(bundle);        getFragmentManager().beginTransaction()                .add(R.id.fragment_container, aFragment)                .commitAllowingStateLoss();        button_fragmengchange = findViewById(R.id.button_fragmengchange);        button_fragmengchange.setOnClickListener(v -> {            getFragmentManager().beginTransaction()                    .replace(R.id.fragment_container, bFragment)                    .commitAllowingStateLoss();        });    }}

������������

  • commitAllowingStateLoss() ������������������������������������������������������������������
  • ��������� Fragment ������������ replace ������ add������������������������������������

3. Fragment view ������������������

Fragment ��������������������� onCreateView���onViewCreated���onActivityCreated ��� onDestroyView ��������������������������������������������������������������������� onViewCreated ������������������������������������������������������������ Fragment ���������

������������

public class BFragment extends Fragment {    private TextView b_textview;    @Nullable    @Override    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {        View view = inflater.inflate(R.layout.fragment_b, container, false);        return view;    }    @Override    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {        super.onViewCreated(view, savedInstanceState);        b_textview = view.findViewById(R.id.fragmentB_textview);        if (getArguments() != null) {            b_textview.setText(getArguments().getString("title"));        }    }}

������������������

  • phoenix ������������������ Fragment A ��� Fragment B ������������������
  • ������������������������������ Fragment ��������������� Fragment������������������������������������������������ Fragment���

������������������������������������������ Fragment ������������������������������������������������������������������������������������

上一篇:java大厂必备知识体系
下一篇:安卓学习笔记-Activity

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月16日 21时56分09秒