【问题标题】:android: Reload activity or refresh the view on spinner item selected,android:重新加载活动或刷新所选微调器项目的视图,
【发布时间】:2011-03-11 07:32:11
【问题描述】:

我有一个活动,我添加了一个微调器,这取决于选择的微调器值我必须更新整个视图即时

此操作包括更改语言环境(使用资源)和更改背景颜色(使用一些局部私有变量)。

我试过onItemSelected并尝试通过调用startActivity重新加载相同的活动,但它会导致每次都重新加载相同的活动并且不能让执行ui操作。

我也尝试过 onResume onWindowAttached 方法,但我不知道如何在那里重新加载活动。所以我只是打电话给setContentView,但它没有正确更新用户界面(有时没有应用语言环境并重置为默认英语,或者有时在背景中应用了错误的颜色。)

没有崩溃,也没有抛出异常。

我需要你的帮助来完成这项任务

谢谢

【问题讨论】:

    标签: android android-activity spinner


    【解决方案1】:

    只更新 Ui 组件,而不是 onItemSelected 上的整个活动。

    【讨论】:

    • 是的。要么保留从微调器中选择的值,然后使用 startActivity 重新加载活动,然后使用保留的值重新绘制 UI
    • 抱歉,startActivity 不起作用,需要重新加载的组件太多。所以我没有认真考虑你的选择。
    • 将用于创建 ui 组件的代码移动到一个单独的方法中(我们称之为 setupUI)并将微调器值作为参数传递。第一次传递一些默认值,然后从您的 onItemSelected 方法调用 setupUI
    猜你喜欢
    • 2014-11-09
    • 2011-04-26
    • 2018-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-14
    相关资源
    最近更新 更多