您的位置:首页 > 移动开发 > Android开发

android应用开发详解(十三)----------------startActivityForResult

2014-10-09 20:26 477 查看
1、工程目录



2、MainActivity.java

//MainActivity中内容可以显示,NextActivity中内容不显示,形成对比,更容易学习
package com.example.test_intent_result;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity {
private EditText username, password;
private Button nextBtn;

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
// super.onActivityResult(requestCode, resultCode, data);
// 从Intent中获得Bundle
Bundle b = data.getExtras();
// 从bundle中获得用户名和密码
String str_username = b.getString("username");
String str_password = b.getString("password");
// 设置EditText为username,password
username.setText(str_username);
password.setText(str_password);
}

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
nextBtn = (Button) findViewById(R.id.next);
nextBtn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
username = (EditText) findViewById(R.id.username);
password = (EditText) findViewById(R.id.password);
String str_username = username.getText().toString();
String str_password = password.getText().toString();
Bundle data = new Bundle();
data.putString("username", str_username);
data.putString("password", str_password);
Intent intent = new Intent(MainActivity.this,
NextActivity.class);
intent.putExtras(data);
startActivityForResult(intent, 0);

}
});
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}


ResultActivity.java

package com.example.test_intent_result;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class NextActivity extends Activity {

private Button priorBtn;

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.next);
priorBtn = (Button) findViewById(R.id.prior);
priorBtn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent = getIntent();
NextActivity.this.setResult(0, intent);
NextActivity.this.finish();
}
});
}

}


3、布局文件

main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<TextView
android:id="@+id/textview01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户名称" />

<EditText
android:id="@+id/username"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="" />

<TextView
android:id="@+id/textview02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户密码" />

<EditText
android:id="@+id/password"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:password="true"
android:text="" />

<Button
android:id="@+id/next"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="下一页" />

</LinearLayout>
next.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<TextView
android:id="@+id/textview03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="E-mail" />

<EditText
android:id="@+id/email"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="" />

<TextView
android:id="@+id/textview04"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户电话" />

<EditText
android:id="@+id/mobile"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="" />

<Button
android:id="@+id/prior"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="上一页" />

</LinearLayout>


4、注册Activity

5、结果演示



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: