Android(OPhone) 学习笔记 - Intent和Activity(2)

在前文中,http://labs.chinamobile.com/community/my_blog/103798/24860,我们学习了如何通过Intent启动Activity并传递数据,在本文中,我们要学习如何在启动新的Activity之后,将所取得的数据返回给原来的Activity。本文是我自学Smego的教程(http://www.aidiji.com/viewtopic.php?f=27&t=146)之后改写的,由于其代码不能运行,部分地方已做修改。这段代码的目的是通过运行一个设置颜色的Activity来设置主窗口的颜色,完成颜色的参数传递。

首先我们绘制主窗口,其代码如下:


画出后结果如图:


这个View需要我们在主程序的界面中添加:
DrawView dv = new DrawView(this);
layout.addView(dv, para);

1.在主程序中,在完成界面布置后我们首先要添加按钮响应:


intent的初始化和前文相同,但是这里用到了函数:startActivityForResult,这是个可以获得返回值的函数。

2.添加返回后的值的分析和响应
有函数:protected void onActivityResult(int requestCode, int resultCode, Intent data)
它的返回值有:RESULT_CANCELED, RESULT_OK,RESULT_FIRST_USER,最后一个是自定义的。

该函数将返回值进行分析,当返回OK时,再提取其中的数据。根据数据来设置View的颜色。

3.既然有返回值,我们看看在按钮设置界面中,值是如何返回的。
界面如下:


在rgActivity.java中添加按钮响应:

这是一个标准的设置返回值的函数,setresult和finish。

点击Blue后,出现变化:


点击Yellow后,出现变化:



细心的读者发现程序的标题变了,那是因为我们在 onActivityResult函数中有setTitle的函数。

当然AndroidManifest.xml里面需要加入新的activity描述,在前一个activity之后加入:
<activity android:name=".rgActivity"></activity>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值