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编辑  收藏  举报

导航