在學(xué)習(xí)Android編程的過程中,小編最近編寫了簡單的Android項(xiàng)目,通過點(diǎn)擊twoactivity(圖書列表)中l(wèi)isview的任何一項(xiàng),接下來武林技術(shù)頻道小編就給大家介紹Android基于Intent實(shí)現(xiàn)Activity之間數(shù)據(jù)傳遞的方法。
MainActivity:
package com.test.intentdemo;import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.view.Menu;import android.view.View;import android.widget.Button;public class MainActivity extends Activity {  private Button btn=null;  public void onCreate(Bundle savedInstanceState)//onCreate方法用來初始化Activity實(shí)例對象  {    super.onCreate(savedInstanceState);//super.onCreate(savedInstanceState)的作用是調(diào)用其父類Activity的onCreate方法來實(shí)現(xiàn)對界面的圖畫繪制工作    setContentView(R.layout.activity_main);//setContentView(R.layout.main)的作用是加載一個界面    btn=(Button)findViewById(R.id.btn);    btn.setOnClickListener(listener);  }  private View.OnClickListener listener=new View.OnClickListener()  {    @Override    public void onClick(View v)    {//     Intent intent=new Intent();//     intent.setAction(Intent.ACTION_SENDTO);//     intent.setData(Uri.parse("smsto:5554"));//     intent.putExtra("sms_body", "Hello!");//sms_body不能隨意換成//     startActivity(intent);      Intent intent=new Intent();      intent.setClass(MainActivity.this, SecondActivity.class);//從一個activity跳轉(zhuǎn)到另一個activity      intent.putExtra("str", "Intent Demo");//給intent添加額外數(shù)據(jù),key為“str”,key值為"Intent Demo"      startActivity(intent);    }  };  @Override  public boolean onCreateOptionsMenu(Menu menu) {    getMenuInflater().inflate(R.menu.activity_main, menu);    return true;  }}secondAcitivity:
package com.test.intentdemo;import android.R.string;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.widget.TextView;public class SecondActivity extends Activity{  private TextView secondTxt;  @Override  protected void onCreate(Bundle savedInstanceState)  {    // TODO Auto-generated method stub    super.onCreate(savedInstanceState);    setContentView(R.layout.second);    Intent intent=getIntent();//getIntent將該項(xiàng)目中包含的原始intent檢索出來,將檢索出來的intent賦值給一個Intent類型的變量intent    Bundle bundle=intent.getExtras();//.getExtras()得到intent所附帶的額外數(shù)據(jù)    String str=bundle.getString("str");//getString()返回指定key的值    secondTxt=(TextView)findViewById(R.id.secondTxt);//用TextView顯示值    secondTxt.setText(str);  }}經(jīng)過武林技術(shù)頻道介紹的Android基于Intent實(shí)現(xiàn)Activity之間數(shù)據(jù)傳遞的方法,想必大家已經(jīng)知道了,大家就可以按照上述方法進(jìn)行操作。
新聞熱點(diǎn)
疑難解答
圖片精選