Android 學習筆記--Activity
在噹噹上買的 郭霖大哥的《第一行程式碼 Android》已經到手了,今天有時間,就翻了翻,今天記錄的內容也是來自該書。
14年來深圳,10月份在深圳開始了Android實習,時間過的很快,不知不覺在現在的公司已經2年了,學到了很多,也越來越知道還有很多的不足,需要系統的學習下java和Android。
當你對某一方面的知識缺乏時,常常會感到心有餘而力不足,那種感覺是很痛苦的,所以是時候給自己補充補充,積累下知識的時候了。
16年就剩下2個月了,希望自己能多堅持,多學習,多記錄~
------------------------
Android Activity的重新理解
1、隱藏標題欄
在onCreate( )中新增,
requestWIndowFeature(WIndow.FEATURE_NO_TITLE);
該行程式碼一定要在setContentView( )之前執行,不然會報錯。
2、menu的使用
現在的專案還沒使用過menu,暫時先記錄下,
i:在res/menu資料夾下,建立menu的xml檔案;
<menu ...>
<item
android:id="@+id/add_item"
android:title ="ADD"
/>
</menu></span>
ii:重寫 onCreateOptionsMenu( )方法;
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main,menu);
return true;
}
iii: 重寫 onOptionsItemSelected() 方法;
3、Intent的使用
i: Intent的顯示使用
Intent(Context packageContext,Class<?> cls) 這是應該是用的最多的一個,
第一個引數Context要求提供一個啟動活動的上下文,第二個引數Class則是指定要啟動的目標活動。
ii: Intent的隱示使用
之前就接觸過直接通過 intent來拉起應用,只是沒有過多的瞭解。
原來在AndroidMainfest.xml中的 相應activity中的 intent-filter中新增特定的 action和category,其它應用就能根據該特定action 和category來啟動該應用。
4、返回資料給上一個activity
i. startActivityForResult(intent,1);
ii. setResult(RESUTLT_OK,intent);
iii. 重寫onActivityResult();
5、activity的生命週期
i.只有一點需要注意, onPause()方法的主要區別在於,如果啟動的新activity是一個對話方塊的activity,那麼onPause()方法會得到執行,而onStop()方法並不會執行。
6、activity被回收了,重啟時恢復之前的資料
i.重寫 onSaveInstanceState()方法,將資料儲存到 bundle;
ii. 在onCreate()中獲取bundle;
7、activity的啟動模式
i.standard
ii.singleTop
iii.singleTask
iii. singleInstance
8、最佳實踐總結
i、知道當前是哪個活動