第一行Android讀書筆記1

Activity學習筆記

1、项目中的任何activity,都应该重写Activity的onCreate()方法。

 

2、android:id 用法:

    android:id =  "@+id/button1"

 

3、android:text 用法:

    android:text = "@string/hello_label"

    在string.xml中添加hello_label标签指定的字符串(用于显示在控件上)

 

4、载入布局文件:

    setContentView(R.layout.main_layout);

    此处应该import com.example.**.R   not   import android.R

 

5、注册Activity,在AndroidManifest.xml文件中注册

    添加

    <activity

          android:name = ""

           ....

      

   <activity />

 

6、隐藏标题栏:

    requestWindowFeature(Window.FEATURE_NO_TITLE);

 

7、使用Menu

        在onCreateOptionsMenu() 方法中加载:getMenuInflater().inflate(R.menu.main, menu); 并返回true

 

        重写onOptionsItemSelected(MenuItem item);

 

 

8、Intent 主要用於啟動Activity,啟動Service,以及發送廣播等。可以指明當前組件想要執行的動作,在不同的組件之間傳遞數據。

 Intent用法分為兩種:顯式Intent和隱式Intent。

 

9、顯式Intent用法:

使用intent(FirstActivity.this, SecondActivity.class)構造Intent,指明傳遞給特定的Activity

 

 

10、隱式Intent用法:使用action和category屬性指明intent可以相應的活動。

1. 使用intent("com.example.activity.ACTION_START")構造intent,指明intent可以相應的action。

2. 使用intent.addCategory("com.example.activity.MY_CATEGORY");指明intent的category屬性


在註冊的activity中添加intent-filter中的action和category,指明當前activity可以相應的activity類別。

<activity>

<intent-filter>

<action android:name="*****"/>

<category android:name="*****"/>

</intent-filter>

</activity>


11、intent傳遞數據:

使用intent.putExtra("extra_data", data);將數據以鍵值對的形式存入intent;


在接收數據的activity中使用intent= getintent(),獲取傳遞過來的intent;

使用intent.getStringExtra("extra_data");取出數據



12、Activity生命週期:

1. Android使用task來管理Activity,一個task就是一組存放在棧中的Activity的集合,即返回棧(Back Stack)。

生存期有三個,分別是完整生存期、可見生存期和前台生存期。

完整生存期:onCreate()->onStart()->onResume()->onPause()->onStop()->onDestroy()->onCreate()->...

可見生存期:onStart()->onResume()->onPause()->onStop()->onRestart()->onStart()->....

前台生存期:onResume()->onPause()->onResume()->....


13、Activity的啟動模式:standard(默認)、singleTop、singleTask和singleInstance。

standard 模式:在該模式下,每當啟動一個新的Activity,它就會在返回棧中入棧,並處於棧頂位置。對於使用

     該模式的Activity,系統不會在乎這個Activity是否已經在返回棧中存在,每次啟動都會創建該Activity

     的一個新的實例。

singleTop模式:在該模式下,當Activity處於返回棧的棧頂位置時,不會創建該Activity的新的實例;然而,當該Activity
                 沒有處於棧頂位置時,依然可以創建該Activity的一個新實例。
singleTask模式:在該模式下,當Activity處於返回棧中時,不會創建該Activity的新的實例,保證該返回棧中只有一個該Activity的例。
每次啟動Activity時,系統首先在返回棧中檢查是否存在該Activity實例,不存在,則創建;存在,則直接使用該實例,
並把在這個Activity之上的所用Activity全部出棧。
singleInstance模式:待更新




 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值