Android 第三天

Android 区分大小写提示实在讨厌,可以修改为不区分大小写提示。说实话还是不好用。瞬间觉得Android开发的小伙伴都好厉害。

Mac版https://blog.csdn.net/ios_lujian/article/details/52399996


片段 Fragment

片段(Fragments)是一个应用程序的用户界面或行为活动,使活动更加模块化设计,可以放置在一块。一个片段是一种子活动。以下要点有关片段:

片段都有自己的布局和规范自己的行为与生命周期回调。

可以添加或删除片段在活动而活动运行。

可以将多个片段在一个单一的活动,建立一个多窗格UI。

片段可用于多种活动。

片段的生命周期是密切相关,其主机活动的生命周期,表示当活动暂停时,所有的片段也将停止活动。

片段可以实现的行为当没有用户界面组件。

Android 的碎片有自己的生命周期,非常相似 Android 中的 Activity 。本节主要阐述其生命周期在不同阶段。

阶段 I: 当被创建了一个片段,它通过以下状态:

onAttach()

onCreate()

onCreateView()

onActivityCreated()

阶段 II: 当片段变得可见,它通过这些状态:

onStart()

onResume()

阶段 III: 当碎片进入后台模式,它通过这些状态:

onPaused()

onStop()

阶段 IV: 当片段被破坏,它通过以下状态:

onPaused()

onStop()

onDestroyView()

onDestroy()

onDetach()


注意点:

Fargment不需要在Androidmanifest中声明,因为他是依赖activity的。

Fargment 必须有对应的xml布局,

Xml中调用方法:

 android:name="com.example.xiaoyan.hellotest.PM_Fragment"

 android:id="@+id/pm_fragment"

 android:layout_width="0dp"

 android:layout_height="match_parent"

 android:layout_weight="2"

 />

Java中调用方法:

// 片段

FragmentManager fragmentManager = getFragmentManager();

FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();

// check the device orientation and act accordingly

Configuration config = getResources().getConfiguration();

if(config.orientation == Configuration.ORIENTATION_LANDSCAPE){

 // Landscapce mode of the device

 LM_Fragment Is_fragment = new LM_Fragment();

fragmentTransaction.replace(android.R.id.content,Is_fragment);

Log.i(TAG, "this is landscape");

}else{

 // Portrait mode of the device

 PM_Fragment pm_fragment = new PM_Fragment();

fragmentTransaction.replace(android.R.id.content,pm_fragment);

Log.i(TAG, "this is vasia");

}

fragmentTransaction.commit();

你可能感兴趣的:(Android 第三天)