android开发,关于onResultActivity调用系统图库,Activity又被重新onCreate 65
正常情况下,Activity不可见之后变回可见,只会调用onstart-onresume。现在我调用系统图库之后,在返回,Activity却变为oncreate-star...
正常情况下,Activity不可见之后变回可见,只会调用onstart-onresume。现在我调用系统图库之后,在返回,Activity却变为oncreate-start-Resume被重新实例化了。可是各方法下打印,显示Activity却没有调用ondestroy,为什么返回来却要oncreate,试过启动模式也没有用,有什么解决的办法么
展开
推荐于2016-04-15 · 知道合伙人软件行家
关注
展开全部
这是因为转屏时重启了Activity,所以重新调用了一次onCreate。
解决方案:
在AndroidManifest.xml的每一个需要禁止转向的Activity配置中加入android:screenOrientation=”landscape” 属性。
参数说明:
landscape = 横向
portrait = 纵向
避免在转屏时重启Activity
android中每次屏幕方向切换时都会重启Activity,所以应该在Activity销毁前保存当前活动的状态,在Activity再次 Create的时候载入配置,那样,进行中的游戏就不会自动重启了!
要避免在转屏时重启Activity,可以通过在AndroidManifest.xml文件中重新定义方向(给每个Activity加上 android:configChanges=”keyboardHidden|orientation”属性)。
在需要控制屏幕显示方向的Activity中重写 onConfigurationChanged(Configuration newConfig)方法,这样在转屏时就不会重启Activity了。
展开全部
有这种可能,当Activity被停止或者Activity变成不可见时会调用onstop方法,而onstop方法则会有两种选择,一种就是LZ说的onRestart-onStart-onResume模式,还有一种就是如果其他app需要内存的话process会被killed,这时再回到该activity则肯定得走oncreate了。
追问
图库之后就返回该Activity,可能是内存不足引起的,有什么方法解决么,在问个问题浏览多张图片,就是全屏滑动浏览,用什么控件viewpager么,还有其他的么
追答
如果是内存不足引起的,LZ可以用onsaveinstantstate来保存现场,这样可以随时还原。浏览多张图片的话,有很多控件,比较常用的是gallery
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
屏幕旋转可能会带来这样的问题,旋转时,activity会被摧毁重建,不知道你是不是这样的问题。
追问
是打开图库,屏幕并没有旋转,如果被销毁ondestroy会被调用,可是并没有调用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询