Android---------------Activity的学习
一、Activity的启动方式
1.显示启动
Intent intent=new Intent(MainActivity.this,SettingActivity.class);
//还可以这样写
Intent intent=new Intent();
intent.setClass(MainActivity.this,SettingActivity.class);
intent.putExtra(EXTRA,contentEditText.getText().toString());
startActivity(intent);
Manifest文件描述为:
<activity android:name=".SettingActivity"
android:label="@string/app_name">
</activity>
2.隐示启动
<activity android:name=".SecondActivity" >
<intent-filter>
<action android:name = "android.intent.action.SEND" />
</intent-filter>
</activity>
Intent Intent intent = new Intent();
//设置Intent的Action属性
intent.setAction("android.intent.action.SEND");
// 启动Activity
startActivity(intent);
二、在activity中保存fragment的对象
1.在新创建的LayFragment extends Fragment中的onCreate()的方法中调用setRetainInstance(true)的时候,
acvtivity被销毁,但是LayFragment的对象不会被销毁(setRetainInstance(false)默认为false)
2. 在Activity中的onCreate的方法中创建LayFragment的对象,并且判断是否已经创建
FragmentManager fm = getSupportFragmentManager();
Fragment fragment = fm.findFragmentByTag("LayFragment");
if(fragment == null){
fragment = new LayFragment();
fm.beginTracation.replace(android.R.id.conteng(替换的fragment) , 被替换的fragment(fragment) ,
"LayFragment"(这个是Tag的标签)).commit();
}
posted on 2018-11-13 15:40 zhang11111wei 阅读(170) 评论(0) 编辑 收藏 举报