一、活動(dòng)中使用Menu
1、新建menu文件夾,在其中新建Menu resource file,這是一個(gè)xml類(lèi)型的文件,并在里面添加字段,每一個(gè)item標(biāo)簽是一個(gè)菜單項(xiàng),其中,title為必須項(xiàng)
2、在Activity中重寫(xiě)onCreateOptionsMenu(),如下
@Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main,menu); return true; }3、重寫(xiě) onOptionsItemSelected(MenuItem item)這個(gè)方法來(lái)實(shí)現(xiàn)監(jiān)聽(tīng)邏輯二、隱式Intent
1、在AndroidManifest.xml的activity標(biāo)簽一般都有過(guò)濾器,過(guò)濾器有三種,action,cetegory和data。其中cetegory默認(rèn)是default類(lèi)型,只有代碼中的這三個(gè)類(lèi)型與清單文件中這三個(gè)類(lèi)型能夠同時(shí)匹配時(shí),該活動(dòng)才能響應(yīng)這個(gè)隱式intent。
2、action只能指定一個(gè),cetegory卻可以指定多個(gè),在代碼中可以通過(guò)intent.addCetegory()來(lái)動(dòng)態(tài)添加cetegory 3、相對(duì)于清單文件來(lái)說(shuō),要想成功響應(yīng)某隱式intent,“大項(xiàng)必須完全相同,小項(xiàng)可多不可少”,且cetegory的defaul類(lèi)型t就像無(wú)參構(gòu)造器,僅自己時(shí)可不寫(xiě),若多了則必須寫(xiě)4、隱式intent不僅可以匹配本程序的acticity,還可匹配其他app的活動(dòng)。
5、代碼中可以使用setdata()方法設(shè)置data,方法內(nèi)接受uri參數(shù),用于指定現(xiàn)在正在操作的數(shù)據(jù),清單文件中的data標(biāo)簽內(nèi)容與intent中所攜帶的data相同,才可匹配
6、Action_View 隱式網(wǎng)頁(yè),Action_Dail 隱式電話(huà)聯(lián)系人
三、返回?cái)?shù)據(jù)給上一活動(dòng)
1、在第一個(gè)活動(dòng)中
startActivityForResult(intent,request)
重寫(xiě)onActivityResult方法
2、在第二個(gè)活動(dòng)中
setResult(RESULT_OK,intent)
四、瑣碎知識(shí)
1、重寫(xiě)onBackPRessed可以重寫(xiě)返回鍵功能,就好像onkeydown那樣
2、重寫(xiě)onSavaInstanceState()可保存數(shù)據(jù)防止被殺掉,獲取的話(huà)要在oncreate里邊用那個(gè)bundle參數(shù)進(jìn)行獲取,獲取與存儲(chǔ)方式為鍵值對(duì)
3、getTask()可以獲得當(dāng)前棧id
4、getclass().getSimpleName()可獲得當(dāng)前活動(dòng)名
5、為保證程序完全退出,可以使用殺死進(jìn)程的代碼android.os.Process.killProcess(android.os.Process.myPid());殺死當(dāng)前進(jìn)程
6、活動(dòng)生命周期中onRestart之后是onStart而不是onResurme
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注