四大組件-------活動(dòng)

活動(dòng)(activity)是一種可以包含用戶界面的組件,主要用于和用戶進(jìn)行交互。

活動(dòng)在src/java文件夾中java為后綴的文件。

public class MainActivity extends Activity   //Activity是android系統(tǒng)提供的一個(gè)活動(dòng)基類,所有活動(dòng)必須繼承Activity(或它的子類CompatAcvitity)。這里MainActivity繼承自Activity(也可以繼承自CompatActivity)
{
    @Override
    protected void onCreate(Bundle savedInstanceState)  //onCreate()方法是創(chuàng)建一個(gè)活動(dòng)時(shí)必須要執(zhí)行的方法
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);    //setContentView()方法是給當(dāng)前活動(dòng)引用一個(gè)布局
        Log.d("MainActivity","onCreate execute");   //Log打印日志
    }
}


為活動(dòng)在AndroidManifest.xml中注冊(cè)
任何活動(dòng)都必須在AndroidManifest.xml中注冊(cè)?;顒?dòng)注冊(cè)要放在<application>標(biāo)簽內(nèi),通過(guò)<acvitity>標(biāo)簽進(jìn)行注冊(cè)。此標(biāo)簽內(nèi)<intent-filter>標(biāo)簽內(nèi)的代碼表示當(dāng)前活動(dòng)為主活動(dòng)(啟動(dòng)器點(diǎn)開(kāi)app圖標(biāo)首先加載這個(gè)活動(dòng))。

  <activity
            android:name=".MainActivity"    //要注冊(cè)的活動(dòng)
          android:label="@string/app_name" >  //給活動(dòng)指定名稱,出現(xiàn)在布局頂部(在這里也會(huì)成為應(yīng)用名稱)
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>   //標(biāo)簽內(nèi)代碼指定當(dāng)前活動(dòng)為主活動(dòng)
        </activity>


活動(dòng)中使用Toast語(yǔ)句
Toast語(yǔ)句是一種非常好的提醒語(yǔ)句,可以將一些短小的消息提醒給用戶,一會(huì)自動(dòng)消失。
在活動(dòng)中的onCreate()方法中添加如下代碼為按鈕增加一個(gè)Toast語(yǔ)句

Button b=(Button)findViewById(R.id.button111);    //button111是元素標(biāo)識(shí)符
        b.setOnClickListener(new View.OnClickListener()
        {
            public void onClick(View V)
            {
                Toast.makeText(MainActivity.this,"呵呵",Toast.LENGTH_SHORT).show();   //MainActivity是活動(dòng)名稱
            }
        });   //為按鈕增加一個(gè)提示語(yǔ)句


在活動(dòng)中使用Menu菜單
在res目錄下新建一個(gè)menu文件夾,然后建立一個(gè)xml為后綴的文件,下例代碼為xml內(nèi)代碼。

<item   //創(chuàng)建具體的某一菜單項(xiàng)
        android:id="@+id/a"    //給菜單項(xiàng)指定唯一標(biāo)識(shí)符
        android:title="第一"/>    //菜單項(xiàng)名稱
    
    <item
        android:id="@+id/b"
        android:title="菜單"/>

在AndroidManifest.xml文件中的活動(dòng)類下代碼

@Override
    public boolean onCreateOptionsMenu(Menu menu)
    {
        getMenuInflater().inflate(R.menu.main1,menu);
        return true;
    }    //聲明一個(gè)menu菜單

點(diǎn)擊事件代碼

@Override
    public boolean onOptionsItemSelected(MenuItem item)
    {
        switch (item.getItemId())
        {
            case R.id.a:
                Toast.makeText(this,"我去",Toast.LENGTH_LONG).show();
                break;
                case R.id.b:
                    Toast.makeText(this,"不去",Toast.LENGTH_SHORT).show();
                    break;
                    default:
        }
        return true;
    }   //菜單選項(xiàng)事件


銷毀活動(dòng)
銷毀活動(dòng)按返回(back)按鈕,或者在java文件中使用finish()方法

Button b=(Button)findViewById(R.id.button111);
        b.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View V)
            {
                Toast.makeText(MainActivity.this,"呵呵",Toast.LENGTH_SHORT).show();   //提示語(yǔ)句
                finish();  //銷毀當(dāng)前活動(dòng)
            }
        });   //為按鈕增加一個(gè)提示語(yǔ)句


用Intent在活動(dòng)之間穿梭
Intent是安卓程序各組件之間進(jìn)行交互的重要方式。他不僅可以指明當(dāng)前組件想要執(zhí)行的動(dòng)作,還可以在不同組件之間傳遞數(shù)據(jù)。Intent一般可被用于啟動(dòng)活動(dòng),啟動(dòng)服務(wù)和發(fā)送廣播等場(chǎng)景。Intent分為顯式Intent隱式Intent


顯式Intent
Intent有多個(gè)構(gòu)造函數(shù)的重載,其中一個(gè)是
Intent(Context packageContext,class<?>cls)這個(gè)構(gòu)造函數(shù)接受兩個(gè)參數(shù),第一個(gè)參數(shù)Context要求提供一個(gè)啟動(dòng)活動(dòng)的上下文。第二個(gè)參數(shù)class指定想要啟動(dòng)活動(dòng)目標(biāo)。通過(guò)這個(gè)構(gòu)造函數(shù)就可以構(gòu)建出Intent的“意圖”。在Activity類中提供了startActivity()方法來(lái)使用Intent。這個(gè)方法專門(mén)用來(lái)啟動(dòng)活動(dòng)。它接收一個(gè)Intent參數(shù)。將構(gòu)建好的Intent傳入startActivity()方法就可以啟動(dòng)目標(biāo)活動(dòng)了。

Button b=(Button)findViewById(R.id.button111);
        b.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View V)
            {
                Intent intent=new Intent(MainActivity.this,CanActivity.class);   //跳轉(zhuǎn)活動(dòng)
                startActivity(intent);   
MainActivity.this.finish();    //跳轉(zhuǎn)活動(dòng)后銷毀當(dāng)前活動(dòng)
                
            }
        });   //為按鈕增加活動(dòng)跳轉(zhuǎn)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容