Android开发笔记之Intent初级学习教程

2019-12-10 19:02:56于海丽

<TextView 
 android:id="@+id/hongtenText"
 android:layout_width="fill_parent" 
 android:layout_height="wrap_content" 
 android:text="@string/hello"
/>
<!-- 跳转到另一个MainActivity -->
<Button
 android:id="@+id/hongtenBtn"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:text="@string/hongtenBtn"
/>

6.2、编辑HongtenActivity.java文件

public class HongtenActivity extends Activity {
/*
   * 定义一个hongtenBtn变量
*/
  private Button hongtenBtn = null;
  /*
   * 定义一个hongtenText变量
*/
  private TextView hongtenText = null;
  public final static int RESULT_CODE = 1;
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.hongten);
    // 首先获得从MainActivity类传递过来的Intent
    Intent intent = getIntent();
    // 在MainActivity那边是setExtras(name,key)
// 在这里就是getExtras()了,他的返回类型是一个Bundle类型
    Bundle bundle = intent.getExtras();
    String text = bundle.getString("str");
    hongtenText = (TextView) findViewById(R.id.hongtenText);
    hongtenText.setText(text + "这是从MainActivity类传递过来的参数");
    hongtenBtn = (Button) findViewById(R.id.hongtenBtn);
    hongtenBtn.setOnClickListener(backMainActivity);
  }
  private OnClickListener backMainActivity = new OnClickListener() {
    @Override
    public void onClick(View v) {
      Intent intent = new Intent();
      intent.setClass(HongtenActivity.this, MainActivity.class);
      intent.putExtra("back", "Hello MainActivity");
      // 启动Activity
// startActivity(intent);
      setResult(RESULT_CODE, intent);
      // 结束HongtenActivity类,返回到MainActivity类,
//并且把名字为"back"参数的字符串传递到MainActivity类中
//同时会调用MainActivity类中的onActivityResult()方法
      finish();
    }
  };
}

6.3、修改AndroidManifest.xml文件

<activity android:name=".HongtenActivity"
  android:label="@string/hongtenBtn">  
</activity>