b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

android result_ok_startactivityforresult 传递参数_dispatchactivi

电脑杂谈  发布时间:2017-01-23 05:05:23  来源:网络整理

startactivityforresult 传递参数_android result_ok_dispatchactivity

startactivityforresult 传递参数

//得到新打开Activity关闭后返回的数据

//第二个参数为请求码,可以根据业务需求自己编号

startActivityForResult(new Intent(MainActivity.this,OtherActivity.class), 1);

}

});

}

@Override

protected void onActivityResult(int requestCode, int resultCode,Intent data) {

String result = data.getExtras().getString('result');//得到新Activity关闭后返回的数据

Log.i(TAG, result);

}

}

当新Activity关闭后,新Activity返回的数据通过Intent进行传递,android平台会调用前面Activity的onActivityResult()方法,把存放了返回数据的Intent作为第三个输入参数传入,在onActivityResult()方法中使用第三个输入参数可以取出新Activity返回的数据。startactivityforresult 传递参数

二、使用startActivityForResult(Intent intent, intrequestCode)方法打开新的Activity,新Activity关闭前需要向前面的Activity返回数据需要使用系统提供的setResult(intresultCode, Intent data)方法实现:

package com.ljq.activitys;

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

public class OtherActivity extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.other);

Button btnClose=(Button)findViewById(R.id.btnClose);

btnClose.setOnClickListener(new View.OnClickListener(){

public void onClick(View v) {

//数据是使用Intent返回

Intent intent = new Intent();

//把返回数据存入Intent

startactivityforresult 传递参数_android result_ok_dispatchactivity

intent.putExtra('result', 'My name is linjiqin');

//设置返回数据

OtherActivity.this.setResult(RESULT_OK, intent);

//关闭Activity

OtherActivity.this.finish();

}

});

}

}

setResult()方法的第一个参数值可以根据业务需要自己定义,上面代码中使用到的RESULT_OK是系统Activity类定义的一个常量,值为-1,代码片断如下:

public class android.app.Activity extends ......{


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shumachanpin/article-28211-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...