溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

10天學(xué)通Android開發(fā)(2-1)-核心組件Activity

發(fā)布時(shí)間:2020-08-11 14:46:05 來(lái)源:網(wǎng)絡(luò) 閱讀:374 作者:wanxl 欄目:移動(dòng)開發(fā)

      Activity、Service、Broadcast Receiver、Content Provide為Android四大核心組件,Activity是與用戶交互的窗口,有三種狀態(tài):運(yùn)行、暫停、停止

七個(gè)方法:


   protected void onCreate(Bundle savedInstanceState);

     protected void onStart();

     protected void onRestart();

     protected void onResume();

     protected void onPause();

     protected void onStop();

     protected void onDestroy();


 

生命周期圖,見:

http://developer.android.com/reference/android/app/Activity.html


可以看到:

運(yùn)行狀態(tài):在OnResume之后

暫停狀態(tài):onPause后,暫停狀態(tài)時(shí),如有其它優(yōu)先更高的程序運(yùn)行需要內(nèi)存,可能會(huì)停止這程序,釋放內(nèi)存

onPause—OnResume

onStop->>onStart


 

小貼士:調(diào)整窗口(代碼)字體大小

WindowsàPreferenceàGeneral->Appearance->Colorsand Fonts->Text FontàEdit


案例Day2-1:

1)新建 Android Application Project

2)創(chuàng)建新類Show1,

擴(kuò)展自Activity,繼承Superclass點(diǎn)擊”Browse…”,輸入:Activity,會(huì)選中“android.app.Activity

3)該類配置到AndroidManifest.xml

雙擊打開AndroidManifest.xml,在可視化界面中,ApplicationNodes,”Add”—”Activity”后,右側(cè),”Browse”,添加剛才的新類,也可直接在AndroidManifest.xml添加一行:

 <activity android:name="Show1"></activity>

4)添加新類的布局

類,添加一內(nèi)容布局,右擊:res->layout,添加Android XML File,取名為:show1,布局方式:LinearLayout

添加一文本:

 <TextView
        android:id="@+id/txtMyView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="MyView" />

5)新類與內(nèi)容布局綁定,在新類代碼文件中添加setContentView(R.layout.show1),如下

public class Show1 extends Activity {
    @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.show1);

6)在主頁(yè)面布局中,添加按鈕事件,傳遞字符串給Show1:


public class MainActivity extends ActionBarActivity {

 private Button btnStart;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
        btnStart=(Button) findViewById(R.id.butStart);
       
        btnStart.setOnClickListener(new View.OnClickListener() {
   
   @Override
   public void onClick(View v) {
    Intent i=new Intent(MainActivity.this,Show1.class);
    Bundle data=new Bundle();
    data.putString("txt","Hello Show1");
    i.putExtras(data);
    startActivityForResult(i,0);
    
    finish();//如有這,則會(huì)關(guān)閉此頁(yè)
   }
  });
    }

7)show1類中接受字符串:

public class Show1 extends Activity {
 private TextView txtMyView;
 
  @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.show1);
        
         txtMyView=(TextView)findViewById(R.id.txtMyView);
        Bundle data=getIntent().getExtras();         
         String txt=data.getString("txt");
         txtMyView.setText(txt);
        
     }
}





向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI