android怎样不让view重绘,强制Android不要在方向更改时重绘活动

我一直在加加弄清楚这个问题。

尽管我已经阅读了很多有关"方向变化"的内容,但Android会终止一项活动并将其作为全新的活动来启动,而处理此活动的唯一方法是将所有内容保存在onSaveInstanceState()中,然后尝试将其还原到onCreate()中。

但是我的活动在不同的时间进行很多不同类型的网络活动,并且如果在执行网络活动时更改方向,则我将不得不处理许多不同而复杂的场景。

有没有简单的方法可以指出Android,更改方向后根本不需要重新绘制此活动,以便它自动保存所有数据并重新使用它?

我想知道是否有类似的事情。

是的,您可以将属性android:configChanges="orientation"添加到AndroidManifest.xml文件中的活动声明中。

编辑:

android:configChanges属性的目的是防止在确实必要时重新创建活动。例如,"相机"应用程序使用此属性,因为在发生方向更改时,不得重新创建相机预览屏幕。用户希望旋转设备时可以无延迟地进行摄像头预览,并且摄像头初始化不是一个很快的过程。因此,Camera应用程序手动处理方向更改是一种本机行为。

对于大多数应用程序,在方向更改期间是否重新创建活动并不重要。但是有时由于创建活动缓慢,由活动执行的异步任务或某些其他原因而在此过程中保留活动更为方便。在这种情况下,可以稍微调整应用程序并使用android:configChanges="orientation"属性。但是,当您使用此调整时,了解真正重要的是您必须实现正确保存和恢复状态的方法!

因此,总结一下这个答案,

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值