標籤:填充 action 函數 時間 int 檔案 second out man
Android studio
大概架構:
1.Activity 目前來看,android的結構===活動+活動內對應響應事件
2.活動首先在java->com.example...下建立活動,而後在AndroidManifest.Xml下註冊活動,這樣活動才能在app程式中生效。
3.給activity添加布局,在layout下建立新的布局.
1.toast---在螢幕底端出現文字提示(一定時間就會自動消失)。 在使用這個的時候,第一個要考慮的肯定是觸發條件,直接就類似於監聽事件. 通過靜態方法makeText(context,text,time)建立一個toast對象,再調用show()顯示出來就好了。
2.Menu 能夠節省很多空間 建立一個檔案夾menu->再建一個main菜單檔案<item>用來建立功能表項目至少給每個功能表項目一個id【唯一識別碼】一個title【顯示指定菜單的名稱---顯示名稱】 而後在對應的activity下重寫onCreateOptionsMenu()方法,這個方法裡首先需要擷取到menu.Main菜單檔案。 Public booolean onCreateOptionsMenu(Menu menu){getMenuInflater().inflater(R.menu.main,menu); return true;} 擷取到菜單填充對象,而後調用inflater函數填充菜單:Inflater的兩個參數,第一個是指定用哪一個資源檔建立菜單,第二個指定添加到哪一個Menu對象裡去。返回true表示允許菜單顯示出來,false表示不允許。 響應菜單item,重寫onOptionsItemSelected()。
3.銷毀活動直接就是finish()就好----給響應監聽項添加finish(),當觸發時自動調用finish()銷毀活動。
4.Intent 這個感覺是一個很重要的東西,畢竟它承擔了一個活動切換以及活動資料的傳遞的責任。
Intent 分為顯示intent和隱式intent兩種。
1->顯示intent Intent(context,class)---第一個參數要求提供一個啟動活動的上下文,第二個參數則是制定想要啟動的活動。Intent Intent(firstActivity.this,secondActivity.class);
startActivity(intent);把構建的意圖【intent】傳遞給start Activity,當點擊按鈕就能夠切換到second Activity。
2->隱式intent 顧名思義,這種intent不會具體指出要啟動的活動,而是通過action、category【行為、類別】在系統中找到對應的activity然後交給intent。
既然這樣,那麼就需要在註冊activity的AndroidManifest.xml下添加action、category兩條屬性。 還能利用隱式intent來開啟第三方應用【其他程式的應用】!!!!!!
3->利用intent來傳遞資料 putExtra()..在firstactivity的想要函數裡面傳遞字串::
string data=”with no patience”;
Intent intent=new Intent(firstactivity.this,secondactivity.class);
intent.putExtra(“extra_data”,data);
startActivity(intent);
在secondActivity裡面接受字串
Intent intent=getIntent();
String data=intent.getStringEtra(“extra_data”);
Log.d(“secondactivity”,data);
//在這個簡單的例子裡面,上一個活動傳遞一個intent對象,然後intent對象攜帶著一堆資訊【在這個例子裡就是extra_data】在響應的活動裡面接受intent並把intent攜帶的資訊顯示出來。在這裡感覺 intent就像是一輛兼職運輸車,其中之一就是負責運送資料putExtra()相當於上貨,getStringExtra()則相當於卸貨。extra_data顧名思義就是運輸車了。
4->返回資料給上一個活動
Intent intent=new Intent(first.this,second.class);
startActivityForResult(intent,1);//第二個參數算是請求碼,在後面
//啟動了secondActivity後再second Activity裡面銷毀活動的時候建立一個intent單純的用來傳遞參數。
Intent intent=new Intent();
Intent.putExtra(“extra_data”,”hello”);
setResult(RESULT_OK,intent);
//第一個參數用來向上返回處理結果,第二個就是向上返回intent
Finish();
剩下的就是需要在first activity裡接受intent傳遞的資訊了【潛規則:用start Activity For Result()啟動的活動在銷毀後會調用上個活動的OnActivityResult()方法,那麼只要重寫放著個方法就能夠擷取到想要的資料了】
Protect void OnActivityResult(int requestCode,int resultCode,Intent data){
Switch(requestCode){
Case 1:
if(resultCode==RESULT_OK){
String data=data.getStringExtra(“extra_data”);
Log.d(“firstActivity”,data);};
Break;
Default;
}
//當銷毀了活動後預設返回上一級也就說能夠看到列印的訊息了。
Android Studio 入門——001 android基本細節