fragments 是 android 开发中的关键组件,为创建动态用户界面提供了模块化且可重用的架构。片段代表活动中用户界面的一部分,允许更灵活和可管理的 ui 设计,尤其是在较大的屏幕上。本文将指导您了解 java 中片段的基础知识、它们的生命周期以及如何在 android 项目中实现它们。
了解片段生命周期:
fragment 的生命周期与其宿主 activity 的生命周期密切相关,但还具有其他状态。以下是关键阶段:
- onattach():当片段第一次附加到其上下文时调用。
- oncreate():调用以初始化片段。
- oncreateview():调用以创建fragment的ui。
- onactivitycreated():当宿主 activity 创建时调用。
- onstart():当片段可见时调用。
- onresume():当片段准备好与用户交互时调用。
- onpause():当片段不再位于前台时调用。
- onstop():当片段不再可见时调用。
- ondestroyview():调用以清理与视图关联的资源。
- ondestroy():调用以清理与片段关联的资源。
- ondetach():当片段与其上下文分离时调用。
实现片段
第一步:创建片段类
要创建片段,请扩展 fragment 类并重写必要的生命周期方法。
public class myfragment extends fragment { @nullable @override public view oncreateview(@nonnull layoutinflater inflater, @nullable viewgroup container, @nullable bundle savedinstancestate) { // inflate the layout for this fragment return inflater.inflate(r.layout.fragment_my, container, false); } }
登录后复制
第 2 步:定义片段布局
在 res/layout 目录中为片段创建 xml 布局文件(例如,fragment_my.xml)。
<?xml version="1.0" encoding="utf-8"?><linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:padding="16dp"><textview android:id="@+id/textview" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="hello, fragment!" android:textsize="18sp"></textview></linearlayout>
登录后复制
第 3 步:将片段添加到 activity
在 activity 的布局 xml 文件中,使用 fragmentcontainerview 来定义片段的放置位置。
<androidx.fragment.app.fragmentcontainerview android:id="@+id/fragment_container" android:layout_width="match_parent" android:layout_height="match_parent"></androidx.fragment.app.fragmentcontainerview>
登录后复制
第四步:在activity中显示fragment
在您的 activity 中,使用 fragmentmanager 添加或替换 fragmentcontainerview 中的片段。
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); if (savedInstanceState == null) { getSupportFragmentManager().beginTransaction() .replace(R.id.fragment_container, new MyFragment()) .commit(); } } }
登录后复制
以上就是掌握 Android 开发中的 Java 片段的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:周斌,转转请注明出处:https://www.dingdanghao.com/article/658788.html