使用activity中遇到的问题及解决办法
2016-07-12 21:32
435 查看
activity的使用
写在前文的话,最近的项目里用到的基本上全是Activity,在使用的时候会出现很多小问题,在这里总结一下。方便以后自己掌握,同时希望也能帮助到需要帮助的人我们都知道Activity是用户可视化的窗口,程序与用户交互都是依托于activity的,一旦程序中使用太多,我们在back时,很多时候不能得到我们想要的结果。这时我们可以操作的办法往往有各种各样的。
问题
在多个activity进行跳转,当点击物理按键返回时(程序中无返回按钮),这时会发现之前的界面一直存在(某些界面我们只需显示一次,然后关闭)
解决办法之一
深刻理解activity的启动模式(standard),在某些activity注册时设置相应的启动模式,可以得到部分解决
如:扫描二维码进入显示界面
现象:开始没有设置启动模式时,扫描进入,返回再次扫描进入,再返回进入,最终的结果是按返回键是程序一直在这两个界面之间跳转,进入几次就重复几次。
原因:我们创建一个activity时默认standard方式启动
解决办法:设置为singleTask方式启动,问题解决
<activity .ScanToDisplayActivity" android:launchMode="singleTask"/>
问题
在多个activity进行跳转,在某个界面动态注册广播返回时,提示没有解除绑定
解决办法
深刻理解activity的生命周期,并不是每个生命周期方法在进入时都会调用的
*问题产生原因:在onResume()方法中注册广播,在onDestroy()中解绑
protected void onResume() {
// 注册广播 receiver = new MyReceiver(); filter.addAction(Constants.ACTION_ACCEPT); registerReceiver(receiver, filter); } @Override protected void onDestroy() { // 解除绑定 super.onDestroy(); unregisterReceiver(receiver); }
解决办法:在onResume()方法中注册(同上),在onPause()方法中解除绑定
protected void onPause() {
super.onPause(); unregisterReceiver(receiver);
}
解决收工,如果大家有什么高招请指教。
另附一关于activity四种启动模式的博客,多谢博主
(http://blog.csdn.net/knlnzhao/article/details/8005277)
相关文章推荐
- 5 个适合系统管理员使用的告警可视化工具
- 利用IE收听“广播”
- 喷墨打印机的四个假故障解决办法
- 您用户网站被黑的原因和解决办法
- SQL Server数据库复制失败的原因及解决方法
- Android广播接收机制详细介绍(附短信接收实现)
- 关于Intype一些小问题的解决办法
- 关于textarea提交的内容无法换行的解决办法
- Android实现将一个Activity设置成窗口样式的方法
- Android Activity 完全结束并退出程序的实例
- Android开发 旋转屏幕导致Activity重建解决方法
- android横竖屏切换时候Activity的生命周期
- Android学习笔记--使用剪切板在Activity中传值示例代码
- Android开发技巧之在a标签或TextView控件中单击链接弹出Activity(自定义动作)
- android PopupWindow 和 Activity弹出窗口实现方式
- Android Fragment 基本了解(图文介绍)
- Android一次性退出多个Activity的方法
- Android开发中关于获取当前Activity的一些思考
- Android开发中Activity属性设置小结
- Android新建Activity的方法