`
phenom
  • 浏览: 408915 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

PrefsActivity修改配置后立即生效。

 
阅读更多
extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener 
这样的Activity需要覆盖方法:public void onSharedPreferenceChanged(SharedPreferences options, String key) ;
然而 如果只是这样,在当前的Activity是不会生效的。
需要覆盖两个方法:
@Override
    protected void onResume() {
        super.onResume();
        // Set up a listener whenever a key changes
        getPreferenceScreen().getSharedPreferences()
            .registerOnSharedPreferenceChangeListener(this);
    }

    @Override

    protected void onPause() {
        super.onPause();
        // Unregister the listener whenever a key changes
        getPreferenceScreen().getSharedPreferences()
            .unregisterOnSharedPreferenceChangeListener(this);
    }

然后在onSharedPreferenceChanged里面可以得到修改的内容,否则是无法得到修改的变化的。
可能的原因猜想是因为没有flush,所以配置修改一个不会发生改变。

分享到:
评论

相关推荐

    CentOs7修改网卡配置文件不生效-亲测有效

    有时,我们可能会遇到修改 `/etc/sysconfig/network-scripts` 目录下的 `ifcfg-eth0` 文件后,网络配置并未生效的问题。这个问题通常是由于 CentOS 7 使用了不同的方式来读取网络配置导致的。这里我们将详细介绍如何...

    修改注册表,立即生效

    5. **即时生效**:通常,注册表更改需要重启计算机才能生效,但某些特定的修改,如环境变量的变更,可以在修改后立即生效,无需重启。这是因为系统会实时监控注册表的变动,并据此更新配置。 6. **验证结果**:最后...

    Debug时修改代码能即时生效.

    Debug时修改代码能即时生效 Debug时修改代码能即时生效是许多开发者梦寐以求的功能,特别是在 Debug 阶段,能够实时更新代码可以大大提高开发效率。但是,随着 antx 和 webx 的热部署插件的退役,Debug 时修改代码...

    Android Studio使用Kotlin时,修改代码后运行不生效的解决方法

    结果却发现,修改 String 资源后,“运行”,修改的内容没有生效。一开始以为只是 String 资源是这样,于是试了下 kt 文件,结果发现“运行”也不能生效。 但是先 clean 了,再“运行”,却可以正常编译出来。查了...

    通过注册表修改环境变量后,立即生效,win32,c或c++通用,密码:env

    通过注册表修改环境变量后 使之立即生效,比如修改path后,打开cmd 则直接可以使用新path里的命令 包含win32 c或cpp源码,和编译好的exe文件 直接编译enableEnv.c即可 cl enableEnv.c 解压密码:env

    修改注册表 立即生效

    "修改注册表立即生效"意味着所做的更改不需要通过重启计算机来使改动生效,这对于系统优化和问题解决来说非常有用。下面我们将详细探讨如何安全地修改注册表以及实现立即生效的方法。 1. **使用命令行访问注册表**...

    使windows系统环境变量的改变即时生效

    当需要修改这些变量,特别是涉及到像Java Development Kit (JDK) 这样的开发工具时,通常需要重启计算机才能让更改生效。然而,这种重启过程可能会打断工作流程,降低效率。本文将介绍如何利用WMIC(Windows ...

    Java动态修改配置即时生效的方式WatchService

    当配置文件被修改时,`WatchThread`会接收到事件并调用`reloadConfig()`方法重新加载配置。这种方式极大地简化了开发和测试流程,避免了频繁的打包和重启。 不过,对于大型项目或Spring Boot应用,由于通常被打包为...

    mysql配置文件my.cnf

    4. **重启服务**:修改配置文件后,必须重启MySQL服务以使更改生效。命令通常为`sudo service mysql restart`或`systemctl restart mysql`。 ### 性能优化 1. **内存调优**:合理设置内存使用参数,如`key_buffer_...

    注册表修改 立即生效 无效注销重启

    注册表修改通常涉及到对系统行为的深度调整,而"注册表修改 立即生效 无效注销重启"这个话题则关注如何进行注册表修改,并使这些更改能够在不重启或注销的情况下立即生效。 首先,我们要理解为什么有些注册表修改...

    dubbo 配置 loadbalance 不生效?撸一把源码(csdn)————程序.pdf

    然而,当用户报告`loadbalance`配置不生效时,可能存在多种原因,这个问题涉及到Dubbo的配置加载机制和Spring Boot的集成。 首先,我们要理解Dubbo的配置加载顺序。在传统的Java应用中,Dubbo的配置通常通过XML文件...

    解决redis修改requirepass后不生效的问题

    刚刚接触redis,因为操作redis的时候不需要安全验证,所以想加上安全验证,在redis.windows.conf...以上这篇解决redis修改requirepass后不生效的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家

    Linux中hostname修改方法详解

    newname即要设置的新的hostname,运行后立即生效,但在系统重启后会丢失所做的修改。 永久修改hostname 永久更改系统的hostname需要要修改相关的设置文件 1 基于RedHat发行版的linux系统 修改/etc/sysconfig/...

    java环境变量配置工具1.6-1.9 即时生效

    这款"java环境变量配置工具1.6-1.9 即时生效"显然是一款专门用于简化这一过程的实用工具,支持从Java 1.6到1.9版本的环境配置,并且具有配置后立即生效的特点,无需重启计算机。 1. **Java环境变量详解**: - **...

    一次Linux修改MySQL配置不生效的问题解决

    在Linux环境下,遇到MySQL配置修改后不生效的问题,通常是由于多方面的原因造成的。本文将以一个实际案例,详细解析这个问题的解决过程。 首先,问题源于在AWS EC2服务器上,为提高安全性和性能,将MySQL数据库迁移...

    oracle修改配置tnsnames

    oracle修改配置tnsnames

    如何修改Vue打包后文件的接口地址配置的方法

    那么如何把环境地址设置成可配置的,不需要再构建代码就能直接生效呢? 2、可选方案 进行了调研后,网上介绍的方案有2种: 1)在static上设置一个config.js,把配置的参数设置成 window 下的全局变量。这种方案的确...

    nginx 配置跨域失效修复的方法示例

    nginx 配置跨域不生效 如下配置 server { listen 80; server_name localhost; # 接口转发 location /api/ { # 允许请求地址跨域 * 做为通配符 add_header 'Access-Control-Allow-Origin' '*'; # 设置请求...

Global site tag (gtag.js) - Google Analytics