问题标签 [android-configchanges]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 不要重新加载活动方向更改但仍重新加载片段
我使用带有几个片段的 MainActivity。
在活动中,我连接到服务器。
我用:android:configChanges="orientation|screenSize"
在我的清单中。
以便 Activity 在方向更改时保持连接。
但现在我不能对港口/陆地(片段)使用不同的布局。
有没有办法在不重新加载活动的情况下强制片段重新加载更改?
android - 应用程序因配置更改而崩溃
我正在开发我的应用程序运行的一部分,AsyncTask
因此我想正确处理配置更改。
使用此链接中的代码(与网站上的代码略有不同),我能够AsyncTask
在 API 下的手机上运行屏幕旋转(我正在使用向后兼容的片段库)。
但是,我随后在我的设备上对此进行了测试,每次旋转设备时都会出现以下错误(通过 logcat 记录):
编辑
当进度对话框可见并且 AsyncTask 在进行配置更改时正在运行时,就会发生这种情况。
作为一种解决方法,我使用了 IntentService。
但是,我还是想知道是什么原因导致它原来的失败?
android - 方向干扰 NavigationDrawer
我有一个使用 NavigationDrawer 的应用程序。
我像这样切换片段:
在 onCreate() 方法中,我执行 selectItem(0)。
我之前使用 android:configChanges="keyboardHidden|orientation|screenSize"
的是Activity
,但现在我想开始为不同的屏幕尺寸和方向创建不同的布局。如果此代码在清单中,我无法使用适当命名的文件夹来执行此操作。
所以,我决定删除它(我不记得为什么我有它!)。但是,通过这样做,每当方向改变时,显示的片段仍然是相同的,但操作栏会更改为另一个片段配置(我认为是之前显示的片段),如果我然后尝试切换片段,操作栏更改(我认为也是之前显示的片段),但显示的片段没有改变。
什么不起作用:
更改.add
为.replace
java - 在两个活动之间旋转设备时出现 configChanges 问题 [+VIDEO]
我有两个活动。应用程序启动,我开始第二个活动。我旋转设备。我回到第一个活动。动画期间出现黑色区域。这是我设置的方式
在我的活动中。如果我不这样做,一切正常。
我该如何解决?
我知道我必须实施onConfigurationChanged
这是代码:
第二:
这是发生这种情况的视频:http ://www.youtube.com/watch?v=8NLNkE1eOK8
当然,这不是我正在从事的项目,但它是专门为理解此问题而创建的示例。
谢谢。
android - 防止 GridView 在 onConfigurationChanged 上滚动
当活动的配置发生变化时,我应用此代码 -
我希望如果GridView
它在中途,它只会从那里开始,但随着配置的变化,它会从顶部重新开始。
android - 如何根据方向更改 UI,但同时避免在方向更改时重新启动活动
嗨,我是 android 应用程序开发的新手。我知道 android:configChanges="orientation|screenSize" 用于避免活动重新启动,但它也不允许 UI(layout-port,layout-land) 更改。但我想要的是,
我需要避免在方向更改时重新启动活动并影响 UI 更改。(即)如果纵向移动设备从布局端口获取布局(或)如果移动设备横向布局从布局土地获取
这可能实现吗?如果是,则表示尽快回复。如果有人知道这一点,请帮助我。提前致谢
android - 如何设置夜间模式绘图以按预期工作
我随着夜间模式的变化改变背景。
我有 /values 和 /values-night 文件夹,其中包含具有不同值的“colors.xml”。`
另一个是
这些颜色用于背景“activity_main_bg2.xml”的图层列表:
我的活动包含片段:
当我从昼夜或背景中更改时间时,背景颜色不会改变。但是如果我使用
一切正常。
如何解决这个问题?这是安卓的bug吗?
android - Android如何高效实现fragment中的数据缓存和配置变更事件?
我很困惑找到更好的实现方法:
1)数据缓存,因为我通过AsyncTask
在每个片段中执行 3-4 次来从其余 API 获取数据,我想要的是从缓存中重新加载数据而不是AsyncTask
再次调用。
2)处理配置更改事件的方法......例如方向更改或其他一些事件。
困惑:数据缓存和配置更改是否以某种方式相关?如果是这样,是否只有缓存代码才能解决这两个问题?
我尝试过的:这是一个对配置更改部分具有魔力的项目, 该库项目可以用于数据缓存目的
还是我应该使用google io 2013 中推荐的volley 库?
我的模型:我有 1 个 ACTIVITY 控制和其他七个执行部分的特定片段。如果您知道如何继续,请输入您的文字?
android - 从 SecondActivity 按下返回按钮时,第一个 Activity 被销毁
我正在实现一个播放在线视频的 Android 应用程序并收到错误消息。为简单起见,我在这里制作了一个示例应用程序。有 2 个活动:MainActivity 和 SecondActivity。
在MainActivity
有一个按钮开始SecondActivity
。我的方案是将设备置于横向模式并单击按钮启动SecondActivity
(以便SecondActivity
自动旋转到横向模式)。然后立即按返回键返回MainActivity
。但是MainActivity
被破坏了。这是我的日志:
被MainActivity
销毁,当前活动为SecondActivity
。如果我再按一次后退,SeconActivity
就会被破坏。任何人都可以向我解释为什么MainActivity
被破坏或者这是 Android 操作系统的错误。提前致谢。
P/S : 对于这种情况,将设备置于横向,然后单击按钮启动 SecondActivity 并立即按返回。
其他案例工作正常。
android - 处理后台任务和活动配置更改
这是我试图解决三天的问题:
例如,REST 客户端应用程序执行大量后台工作(网络调用)并将结果发布回 UI 线程。很明显,它应该异步完成。Android 允许以多种方式执行此操作(例如 AsyncTasks 和 IntentServices)。
从活动运行异步任务的最大问题是配置更改。例如,我们有在 AsyncTask 中启动下载过程并显示 ProgressDialog 的活动。屏幕旋转后,操作系统正在重新创建活动。结果,当 asynctask 将尝试关闭旧(死)活动的进度对话框时,它将失败。
这个问题有几种解决方案:
第一个是在工作片段中保留异步任务:很棒的帖子如何做到这一点在这里。此解决方案的一大优势是操作系统知道何时调用 onPostExecute() 方法。在某些情况下,onPostExecute() 可能会在旧活动被销毁而新活动仍未创建时调用。但这不会发生,因为操作系统不允许在调用 onAttach() 之前执行 onPostExecute()。缺点是 AsyncTasks 不适合长期操作,并且根据操作系统版本的不同表现不同。
第二种方法是使用 LocalBroadcastManager 和 IntentService。这是另一篇文章,展示了如何使用它。如果服务在未注册时(重新创建活动的时刻)向 BroadcastReceiver 发送消息会发生什么?
第三种解决方案是脏 hack:在 mainfest 中声明
android:configChanges="keyboardHidden|orientation"
。不适合我。
也许有人知道另一种解决方案?