Intent在view中跳转Activity2

Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
((Activity)context).startActivityForResult(intent, 1);

如果想跳转可以返回请求数据的activity,则必须还要把context强转为activity。然后重写一个方法:

@Override
protected
void onActivityResult(int requestCode, int resultCode, Intent data) {   if(requestCode == 1){     TextClass.onActivityResult1(requestCode, resultCode, data); } super.onActivityResult(requestCode, resultCode, data); }

 

这时候问题就来了,这个方法是在Activity中的,在view下不能调用。我们可以折中一下,先在在工程的MainActivity中重写这个方法,因为这个方法是activity退出时的回调方法,所以不管他在那个activity中重写,都会被调用到。然后在方法里调用一个继承自view类中的自定义的一个方法(这个方法各个参数和onActivityResult()中一样),回调方法执行后就会把参数传给自定义的方法,在这个方法里就可以获取数据了。

//我这个是以打开图库获取图片路径为例:
public static void onActivityResult1(int requestCode, int resultCode, Intent data){
  if(data != null){
    Uri uri = data.getData();
    String iPath = uri.toString();
  Log.i(TAG, iPath + "——-tostirng");
}
}

 

posted on 2013-03-11 15:33  取悦  阅读(374)  评论(0编辑  收藏  举报

导航