android2.3 api demo 学习系列(10)--App/Activity/RecevieResult

在先前的文章 activity之间跳转传值 已经学习过这方面的内容,接下来实现这个demo就简单多了;

1、layout配置文件(一个现实结果的text 一个获取结果的按钮)

 

<?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:gravity="center_horizontal"
    android:orientation="vertical"
    android:padding="4dip" >

    <TextView
        android:id="@+id/app_activity_recevie_results"
        android:layout_width="match_parent"
        android:layout_height="10dip"
        android:layout_weight="1"
        android:textColor="@drawable/black"
        android:background="@drawable/green"
        android:paddingBottom="4dip" >
    </TextView>

    <Button
        android:id="@+id/app_activity_recevie_get_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0"
        android:text="@string/app_activity_recevie_get_text" >

        <requestFocus />
    </Button>

</LinearLayout>

 

 2、获取结果的按钮的点击事件

 

OnClickListener getBtnClickListener = new View.OnClickListener() {
	@Override
	public void onClick(View v) {
		startActivityForResult(new Intent(RecevieResult.this,RecevieResultSendMsg.class), REQUEST_CODE);
	}
};

 

 请注意这里使用的是 startActivityForResult。

接下来重写获取结果的方法

 

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
	// TODO Auto-generated method stub
	super.onActivityResult(requestCode, resultCode, data);
	if (RESULT_OK == resultCode) {
		if (textResults.getText().length()>0) {
			textResults.append("\r\n");
		}
		textResults.append(data.getAction()+data.getExtras().getString("data"));
	}
}

3、现在来实现RecevieResultSendMsg,点击按钮返回结果

 

OnClickListener okBtnOnClickListener = new View.OnClickListener() {
		@Override
		public void onClick(View v) {
			Intent intent = new Intent();
			intent.putExtra("data", "校验成功");
			intent.setAction("确认:");
			setResult(RESULT_OK, intent);
			finish();
		}
	};
	OnClickListener cancelBtnClickListener = new OnClickListener() {
		@Override
		public void onClick(View v) {
			Intent intent = new Intent();
			intent.putExtra("data", "校验失败");
			intent.setAction("失败:");
			setResult(RESULT_OK, intent);
			finish();
		}
	};

 

 4、效果图:


android2.3 api demo 学习系列(10)--App/Activity/RecevieResult


android2.3 api demo 学习系列(10)--App/Activity/RecevieResult

 

 

 

 

你可能感兴趣的:(android,api,demo)