package com.example.android.active; 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; import android.widget.EditText; /** * Activity实现返回结果 * 1.需要得到activity的返回结果,必须使用startActivityForResult()方法启动另一个activity * 2.必须重写onActivityResult()方法来处理返回结果 * 3.在返回结果的activity中要使用setResult()方法设置结果 * * */ public class MainActivity3 extends Activity implements OnClickListener{ private Button button1; private EditText etNumber; private static final int REQUESTCODE=1; //请求编码,只是做一个标记,以便在onActivityResult()中识别 @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.activity_main3); button1=(Button) findViewById(R.id.submit1); button1.setOnClickListener(this); etNumber=(EditText) findViewById(R.id.EditPhoneNumber); } @Override public void onClick(View v) { // TODO Auto-generated method stub //启动一个有返回结果的Activity Intent intent=new Intent(this,MainActivity4.class); //参数:1.intent对象 2.请求编码(标记)可以是正整数值 startActivityForResult(intent, REQUESTCODE); } //重写返回结果的方法 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { // TODO Auto-generated method stub super.onActivityResult(requestCode, resultCode, data); switch (requestCode) { case REQUESTCODE: if(resultCode==RESULT_OK){ String phone=data.getStringExtra("phone"); etNumber.setText(phone); } break; default: break; } } }
package com.example.android.active; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.TextView; public class MainActivity4 extends Activity implements OnItemClickListener{ private ListView listView; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.activity_main4); listView=(ListView) findViewById(R.id.listView1); String [] array={"123","334","435"}; ArrayAdapter<String> adapter=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_single_choice,array); listView.setAdapter(adapter); listView.setOnItemClickListener(this); } @Override public void onItemClick(AdapterView<?> arg0, View v, int arg2, long arg3) { // TODO Auto-generated method stub TextView textView=(TextView)v; String s=(String) textView.getText().toString(); System.out.println(s); //设置返回的结果 Intent intent=new Intent(); intent.putExtra("phone", s); this.setResult(RESULT_OK, intent); this.finish(); } }
activity_main3.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" > <EditText android:id="@+id/EditPhoneNumber" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入" /> <Button android:id="@+id/submit1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="提交" /> </LinearLayout>
activity_main4
<?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" > <ListView android:id="@+id/listView1" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> </LinearLayout>
本文出自 “matengbing” 博客,请务必保留此出处http://matengbing.blog.51cto.com/11395502/1881325
原文地址:http://matengbing.blog.51cto.com/11395502/1881325