Activity间传递Bitmap,startActivityForResult的用法

本文介绍了在Android应用中如何在Activity之间传递Bitmap,由于Bitmap不能使用序列化方式传递,作者提出了一种通过自定义Application类作为全局变量的解决方案。此外,文章还简单说明了startActivityForResult的使用方法,以及在onActivityResult中处理返回结果的示例代码。最后,作者提到其实可以使用Dialog达到相同效果,并以此为学习过程中的趣事。
摘要由CSDN通过智能技术生成

之前那个手势输入法的程序,想添加个类似dialog的功能(当时还不知道dialog...只知道用activity仿dialog-_-)

 

 

 

需要在Activity之间传递Bitmap.之前在网上查到可以写一个类,把消息作为类的数据成员来传递。

可是实现之后报错,再google,才知道Bitmap是无法用序列化的方法传递的,用其他方法

其中一种就是作为全局变量传递。

 

首先写一个类:

 

然后再Activitymanifest.xml中注册一下

<application android:name =".InfoClass" android:icon="@drawable/icon" android:label="@string/app_name">

注意 这里不是重新写一条<application/>,而是在原有的里面加上 android:name =".InfoClass"

 

接下来是使用

赋值:

 

使用:

 

 

OK,Bitmap变量传递过去了,其实这就是一种全局变量的用法,据说比public Static有更好的安全性,呵呵

 

 

startActivityForResult的用法

在main_Activity中:注意我这里只需要sub_Activity传回ok or cancel的消息就可以了

所以并没有用intent传值过去,也没有传确切的值回到main,但是如果需要是可以互相传递值的

具体用法就不写了,有需要去网上搜索相应的帖子吧

 

在sub_Activitiy中:

 

 

 

值传回来以后,在onActivityResult()方法中处理,根据传回来的resultCode来选择相应的处理

 

 

其实使用dialog完全可以完成同样的功能。。我也是做完以后才知道的

一直没学过dialog的用法-_- 又闹笑话了

不过也通过弯路学到了东西,无所谓啦

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值