问题标签 [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 - 使用动态微调器处理方向变化
我已经在网上搜索并继续尝试了 5 个小时,但我找不到解决问题的方法。我想在方向改变后保持我的微调器的状态。
我有 2 个动态创建的微调器。他们通过 http 请求获取项目,第一个微调器通过 setOnItemSelectedListener() 方法更改第二个中的项目。我将字符串读入全局列表。
我的第一个问题是阻止活动重新启动。
我在清单文件中进行了此更改,以自己处理方向更改并避免重新启动活动。
我找到了一种在互联网上处理方向变化的方法,但它对我不起作用。更改方向时出现空指针异常。
这是我到目前为止所做的。我什至不确定我正在尝试这样做。因此,将不胜感激任何更合适的方法。
android - 处理Activity和Thread之间关系的常见做法是什么
我有以下情况
- 我
Thread
从Activity
. - 我按下软后退按钮。就这样,
Activity
被毁了。 - 我再次启动相同的
Activity
。注意,之前启动Thread
的仍在运行。
为了防止在前一个仍在运行时Activity
启动另一个相同的,这就是我正在做的Thread
Thread
- 启动后
Thread
,我会将其存储到静态变量中。因此,下次当我尝试启动同一个线程时,我将通过静态变量检查前一个线程的活跃度。这是一个好习惯吗?克服这个问题的最佳做法是什么?
注意,用户线程持有对Activity
启动它的引用。但是,Activity
当用户按下软后退按钮时,可能会破坏。因此,当我再次启动新 Activity 时,thread
并没有意识到这一点,它仍然指的是 old Activity
。因此,当用户线程尝试访问 old 的任何成员时Activity
,将发生崩溃,因为Activity
已经被销毁。克服这个问题的最佳做法是什么?
android - 如果我的 GLSurfaceView 应用永远不需要读取 Android 设备的语言环境,我可以安全地忽略语言环境配置更改吗?
默认情况下,如果用户在我的应用程序运行时更改其设备的显示语言,Android 将销毁然后重新创建 Activity。这样做是为了确保我的应用程序正确使用最新设置。
locale
我可以通过添加到configChanges
清单中的属性来覆盖此行为。然后当用户更改语言时,我只会得到回调onConfigChanged()
而不是完全重启。但是文档说我应该再次“检索所有资源”:
所有这些配置更改都会影响应用程序看到的资源值。因此,当调用 onConfigurationChanged() 时,通常需要再次检索所有资源(包括视图布局、可绘制对象等)以正确处理更改。
我的问题是,对于语言环境更改真的是这样吗?如果我有一个从不使用用户语言设置的假设应用程序,并且只使用 GLSurfaceView 呈现图形,那么忽略此事件是否安全?如果是这样,你能用文档备份吗?
忽略该事件似乎可以正常运行,并且当我不使用任何语言环境时重新创建视图没有多大意义,但我想确保我没有引入一些微妙的错误。
非常感谢任何信息。
android - 非 UI 片段与单例
我猜非 UI 片段的主要目的是存储在配置更改时保留的数据,对吧?那么,除了这个存储特定于拥有这个片段的活动之外,这是它在整个应用程序中使用单例模式的好处(这是我迄今为止一直在做的解决方案)?
android - Android gridview 方向
嗨,我有具有自定义布局的gridview,自定义布局是一个框架布局,它有两个按钮,一个按钮只有在使用单击其他按钮时才可见......就像用户可以点击一个数字(我正在尝试要清楚,如果有人不明白,请告诉我)......现在我的问题是......我如何保存活动的状态。我希望用户删除与横向或纵向模式相同数量的按钮......即使他改变了平板电脑的方向。
最后,当用户改变方向时,我如何确保活动保持在相同的状态......
android - 如何在android webview中恢复视频播放状态
在我的活动中,我将 youtube 视频内容加载到我的网络视图中,如下所示:
这是加载你的管视频。单击播放按钮后,视频正在播放。所有这一切都很好。
当我旋转屏幕时如何在 Web 视图中恢复视频状态是指视频是否在旋转前播放了 30 秒。我必须在旋转后 31 秒开始。申请
onSave 和 onRestore 生命周期方法对我不起作用。
android - 更新语言环境需要覆盖 OnConfigurationChange,它不指向 layout-land xml,这又是需要的
我一直在使用 Locale 作为应用程序语言,在方向更改时需要重新配置。
但是在我的代码中,我必须将我的活动定向到我需要销毁并重新创建我的活动以重置 Xmls 的布局区域。
谁能告诉我如何在OnConfigurationChange(Configuraion config)
不破坏活动的情况下覆盖并仍然将我的布局定向到布局土地。
这可能吗 ?
android - Android - 仅在智能手机中强制定向
我的应用程序有 3 个屏幕,所有这些屏幕在智能手机中都必须是纵向的,在平板电脑中必须是两个方向。
现在我在 Unitl 中使用以下代码OnCreate
:
但是,如果我将智能手机置于横向模式并启动应用程序,它将以横向显示几秒钟,然后旋转为纵向。
这里的许多答案建议通过清单锁定方向,但这会锁定平板电脑中的方向,这是不希望的。
我将非常感谢任何能引导我找到解决方案的信息。谢谢。
android - 在 Android 4.2 上运行时屏幕闪烁。(活动不断重启)
一些用户报告说我的应用程序屏幕在 Android 4.2 上运行时有时会闪烁(仅限!)
我在我的设备上尝试过,在放置日志后,活动重新启动并再次重新启动,大约每秒 3 次。
所以我所做的是在它不断重启时跟踪方法调用,结果如下:
似乎问题在于 ViewGroup.resetRtlProperties(),因为这是 Android 4.2 (17) 中的新功能。
我还不能确认这是否是一个错误,但还有其他人遇到过这个问题或有任何解决方法吗?
android-annotations - 如何处理 android 注释中的配置更改。(屏幕旋转)
我正在使用 Android 注释。有一个进度对话框,但是当我旋转屏幕时(着陆到端口)。进度对话框关闭并在 log cat 中显示这些错误。
活动 com.example.progressdialog.AnnotationProgressDialogActivity_ 泄露了最初添加在这里的窗口 com.android.internal.policy.impl.PhoneWindow$DecorView@40661c20
android.view.WindowLeaked: 活动 com.example.progressdialog.AnnotationProgressDialogActivity_ 已经泄露了最初添加在这里的窗口 com.android.internal.policy.impl.PhoneWindow$DecorView@40661c20
这是我的代码:-