1. 程式人生 > >Android學習之引數傳遞

Android學習之引數傳遞

我從今天開始學習Android,每天記錄學習內容,與大家一起進步!

1、安卓之引數傳遞

Intent是activity,應用組建進行通訊的橋樑,所以所有的引數傳遞都與它有關。

      1.1引數傳遞方式 Intent

簡單引數傳遞:fatherActivity傳遞引數到sonActivity :

// Intent intent=new Intent(fatherActivity.this,sonActivity.class);
       
        //   intent.putExtra("tag","這是傳遞的引數");

 // startActivity(intent);啟動子activity

    sonActivity 接受引數的方式為:  getIntent().getStringExtra("tag");//簡單引數

1.2複雜引數傳遞方式:

Bundle類用作攜帶資料,它類似於Map,用於儲存Key-Value名值對形式的值。相對於Map,它提供了各種常用型別的putXXX()/GetXXX()方法,putXXX用於將

資料放入Bundle物件中。

 Intent intent=new Intent(MainActivity.this,aly.class);     

  Bundle data=new Bundle();
           
     data.putString("txt","hello1");//複雜資料的傳遞
             

   intent.putExtras(data);

startActivity(intent);啟動子activity

子頁面獲取資料

 Bundle data=getIntent().getExtras();//複雜資料的接收

data.getString(Key);

1.3帶返回值的頁面傳遞值

啟動一個Intent時使用 startActivityForResult(intent,0);

父頁面重寫

  @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (data!=null)
        {
            String result=data.getStringExtra("result");
            textView.setText(result);
        }

子頁面接受資料進行處理


 Intent i=new Intent();
                i.putExtra("result","hellow Main");

                setResult(0,i);
                finish();