希望我能成功地解释我的情况。

我有一个活动(A),基本上是一个表单,用于添加一个新项目,几乎没有文本字段,时间和位置字段。

单击setlocation按钮时,它将调用第二个活动(B),该活动(B)具有带有自定义ArrayAdapter的列表视图,该列表提出了有关locactins的建议。 单击一个项目时(适配器类内部的OnClickListener),它需要将其返回给活动A。

从A呼叫活动B

Intent I = new Intent(getApplicationContext(), TaskGeoSetActivity.class);

startActivityForResult(I, LOC_ACTIVITY_CODE);

在活动B中设置适配器

Adapter = new TaskGeoSubBaseAdapter(getApplicationContext(), R.id.sugtext, result);

Adapter.setActivity(TaskGeoSetActivity.this);

lv.setAdapter(Adapter);

适配器内的OnClick事件

public void setActivity(Activity act) {

parentAct = act;

}

private final OnClickListener locpicker = new OnClickListener() {

@Override

public void onClick(View v) {

Address a = items.get((Integer) v.getTag());

Intent intent = new Intent(context, TaskAddActivity.class);

intent.putExtra("Address", a);

parentAct.setResult(parentAct.RESULT_OK, intent);

}

};

以此替换您的点击处理程序。

private final OnClickListener locpicker = new OnClickListener() {

@Override

public void onClick(View v) {

Address a = items.get((Integer) v.getTag());

Intent intent = new Intent(context, TaskAddActivity.class);

intent.putExtra("Address", a);

((Activity)v.getContext()).setResult(parentAct.RESULT_OK, intent);

((Activity)v.getContext()).finish();

}

}

在您的呼叫活动中,覆盖onActivityResult以处理结果。 OUR_REQUEST_CODE是您在调用startActivityForResult时发送的请求代码。

@Override

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

super.onActivityResult(requestCode, resultCode, data);

switch(requestCode){

case OUR_REQUEST_CODE:

if(resultCode == RESULT_OK) {

//Do something useful with data

}

break;

}

}

您必须在activity B上设置结果,而无需Adapter.setActivity(TaskGeoSetActivity.this);

只是this.setResult(parentAct.RESULT_OK, intent);:

private final OnClickListener locpicker = new OnClickListener() {

@Override

public void onClick(View v) {

ActivityB.this.setResult(...);

finish();

}

嗨,单击侦听器位于基础适配器内部。"这个。" 无法识别ActivityB。 我知道来自activityB的setResult会将其传递回A,但是如何从适配器传递呢? 最好的祝福

@BenDiamant对不起,是ActivityB.this。 而不是this.ActivityB

嗨! 我在以下行收到"在作用域内无法访问ActivityB类型的封闭实例"错误:ActivityB.this.setResult(ActivityB.RESULT_OK,intent);

@BenDiamant哦,我以为是活动B,是活动A?

Intent intent = new Intent(context,ActivityA.class); intent.putExtra(" Address",a); ActivityB.this.setResult(ActivityB.RESULT_OK,意图); 第3行给出错误

要将数据传递回活动A,应结合使用功能setResult和startActivityForResult。

看到这个答案:

https://stackoverflow.com/a/14118010/238180

嗨,谢谢你。 我知道,问题是我需要在适配器类中调用setResult

android 活动之间传递参数,Android:使用适配器在活动之间传递参数相关推荐

  1. android数据回传的代码,android Activity之间数据传递 Parcelable和Serializable接口的使用...

    Activity之间传数据时,为了避免麻烦,往往会将一些值封装成对象,然后将整个对象传递过去.传对象的时候有两种情况,一种是实现Parcelable接口,一种是实现Serializable接口. 0. ...

  2. Android技巧:003使用Intent连接多个活动

    Intent 是 Android 各组件之间进行交互的一种重要方式,一般被用于启动活动.启动服务以及发送广播等场景. 显式 Intent: Intent 有多个构造函数重载,其中一个 Intent(C ...

  3. Android第一行代码(第一行代码、活动)

    一.第一行代码 1.了解全貌 1.1Android的系统架构 Android的系统架构:Linux内核层.系统运行库层.应用框架层和应用层 1.Linux内核层 Android系统是基于Linux内核 ...

  4. Android零基础入门第83节:Activity间数据传递方法汇总

    2019独角兽企业重金招聘Python工程师标准>>> 在Activity间传递的数据一般比较简单,但是有时候实际开发中也会传一些比较复杂的数据,本节一起来学习更多Activity间 ...

  5. Android开发实践:Java层与Jni层的数组传递

    Android开发中,经常会在Java代码与Jni层之间传递数组(byte[]),一个典型的应用是Java层把需要发送给客户端的数据流传递到Jni层,由Jni层的Socket代码发送出去,当然,Jni ...

  6. android onmeasure方法的参数,android中onMeasure初看,深入理解布局之一!

    今天学习android自定义组件:docs/guide/topics/ui/custom-components.html 其中有两个对布局界面影响很的方法,onDraw(),和onMeasure(). ...

  7. android 序列化传参数,android 传值 序列化

    Activity之间传数据时,为了避免麻烦,往往会将一些值封装成对象,然后将整个对象传递过去.传对象的时候有两种情况,一种是实现Parcelable接口,一种是实现Serializable接口. 0. ...

  8. 【Android 事件分发】事件分发源码分析 ( ViewGroup 事件传递机制 七 )

    Android 事件分发 系列文章目录 [Android 事件分发]事件分发源码分析 ( 驱动层通过中断传递事件 | WindowManagerService 向 View 层传递事件 ) [Andr ...

  9. 【Android 事件分发】事件分发源码分析 ( ViewGroup 事件传递机制 六 )

    Android 事件分发 系列文章目录 [Android 事件分发]事件分发源码分析 ( 驱动层通过中断传递事件 | WindowManagerService 向 View 层传递事件 ) [Andr ...

  10. 【Android 事件分发】事件分发源码分析 ( ViewGroup 事件传递机制 五 )

    Android 事件分发 系列文章目录 [Android 事件分发]事件分发源码分析 ( 驱动层通过中断传递事件 | WindowManagerService 向 View 层传递事件 ) [Andr ...

最新文章

  1. oracle数据库动态与静态注册
  2. python-range用法
  3. ‘pip 安装第三方库速度太慢’的解决办法
  4. 【数据结构与算法】3.二叉搜索树(BST)、c++代码
  5. 【网络安全】手把手给大家演练红队渗透项目
  6. C# WinForm开发系列 - TextBox
  7. 【机器视觉】机器视觉入门必读
  8. 我对CTO的理解 CTO要有技术魅力[转载]
  9. 京东发布“下一代智能协同开放平台”战略 助力政企数字化转型
  10. 使用.net FtpWebRequest 实现FTP常用功能 上传 下载 获取文件列表 移动 切换目录 改名 ....
  11. 巴特沃斯滤波器 python_巴特沃斯、切比雪夫、贝塞尔滤波器的区别
  12. Oracle分区交换
  13. 百度地图API获取经纬度实战
  14. 如何设计出一个比较合理的数据归档系统
  15. Andriod.mk用法
  16. MDCC为移动开发者服务:一看、一聊、一聚
  17. ESN学习笔记——原理与超参数
  18. 小程序用户反馈-HotApp小程序统计仿微信聊天用户反馈组件...
  19. 画廊效果的ViewPager实现(附带无限自动轮播)
  20. c语言程序项目设计三角函数,《C语言及程序设计》实践参考——编制三角函数表...

热门文章

  1. linux mp4box安装,mp4box安装备忘
  2. win10你的电脑设备需要修复_图文详解win10升级失败的解决方法
  3. python变量的赋值操作_Python中关于变量赋值操作的实例分享
  4. 锁和并发性----隔离级别
  5. [物理学与PDEs]第3章第3节 电导率 $\sigma$ 为无穷时的磁流体力学方程组 3.3 磁场线``冻结''原理...
  6. Centos 6编译安装apachePHPmysql
  7. 一个网站大概多少钱_建一个外贸网站大概需要多少钱?角点科技总结建外贸网站的费用...
  8. python爬虫中文乱码_Python 爬虫过程中的中文乱码问题
  9. excel取整函数_查询函数Choose、Lookup、Hlookup、Vlookup应用技巧解读
  10. loadrunner mysql_LoadRunner访问Mysql数据库