Preferences.java

 1 import android.content.Context;
 2 import android.content.SharedPreferences;
 3
 4 import java.util.Set;
 5
 6 public class Preferences {
 7     private static final String PREFERENCES_MAIN = K.app.package_name + ".main";
 8     private static Preferences singleton = null;
 9
10     private SharedPreferences pref;
11     private SharedPreferences.Editor editor;
12
13     public Preferences (Context context, String prefName) {
14         pref = context.getSharedPreferences(prefName, Context.MODE_PRIVATE);
15         editor = pref.edit();
16     }
17     public Preferences (String prefName) {
18         this(App.getInstance(), prefName);
19     }
20
21     public static Preferences getInstance () {
22         if (singleton == null) {
23             singleton = new Preferences(PREFERENCES_MAIN);
24         }
25         return singleton;
26     }
27
28     public boolean contains (String key) { return pref.contains(key); }
29
30     public boolean get (String key, boolean def) { return pref.getBoolean(key, def); }
31     public int get (String key, int def) { return pref.getInt(key, def); }
32     public long get (String key, long def) { return pref.getLong(key, def); }
33     public float get (String key, float def) { return pref.getFloat(key, def); }
34     public Set<String> get (String key, Set<String> def) { return pref.getStringSet(key, def); }
35     public String get (String key) { return get(key, ""); }
36     public String get (String key, String def) { return pref.getString(key, def == null ? "" : def); }
37
38     public Preferences put (String key, boolean value) { getEditor().putBoolean(key, value); return this; }
39     public Preferences put (String key, int value) { getEditor().putInt(key, value); return this; }
40     public Preferences put (String key, long value) { getEditor().putLong(key, value); return this; }
41     public Preferences put (String key, float value) { getEditor().putFloat(key, value); return this; }
42     public Preferences put (String key, String value) { getEditor().putString(key, value == null ? "" : value); return this;  }
43     public Preferences put (String key, Set<String> value) { getEditor().putStringSet(key, value); return this; }
44
45     public Preferences remove (String key) { editor.remove(key); return this; }
46     public Preferences clear () { editor.clear(); return this; }
47
48     public Preferences commit () {
49 //        if (editor != null) {
50 //            editor.commit();
51 //            editor = null;
52 //        }
53         editor.commit();
54         return this;
55     }
56
57     private SharedPreferences.Editor getEditor () {
58         if (editor == null) {
59             editor = pref.edit();
60         }
61         return editor;
62     }
63 }
时间: 2024-11-07 05:41:01

Preferences.java的相关文章

java开发工具——Eclipse的常见使用说明

Java开发常见工具介绍: A:操作系统自带的记事本软件 B:高级记事本软件 C:集成开发环境 IDE (Integrated Development Environment) Eclipse的基本使用Eclipse的基本使用: 选择工作空间 工作空间 其实就是我们写的源代码所在的目录 用Eclipse来完成一个HelloWorld案例 代码以项目为基本单位 创建项目 创建包 创建类 编写代码 eclipse的汉化及检查: 使用dropins安装插件 从Eclipse3.5开始,安装目录下就多了

如何查看JDK以及JAVA框架的源码

如何查看JDK以及JAVA框架的源码 设置步骤如下: 1.点 “window”-> "Preferences" -> "Java" -> "Installed JRES" 2.此时"Installed JRES"右边是列表窗格,列出了系统中的 JRE 环境,选择你的JRE,然后点边上的 "Edit...", 会出现一个窗口(Edit JRE) 3.选中rt.jar文件的这一项:“c:\pr

Java读写excel

先下载JExcelapi的jar包. 读取的文件主要分两类:xls文件.xlsx文件.xls文件的相关操作用的是jxl.jar包,只要将这个包导入即可.xlsx文件的相关操作是利用apache的poi包. 一.xls文件(一个jar包:jxl.jar) 1)创建 package jexcel;      import java.io.*;    import jxl.*;    import jxl.write.*;       /**   * @author Ken   *   * To ch

Java语言基础

目录 一.Java程序预览 1.1.Hello World 1.2.Eclipse使用 1.2.1.项目位置 1.2.2.重置窗口布局 1.2.3.设置字体 1.2.4.修改控制台字体 1.2.4.项目的导入与保存 1.2.5.修改快捷键 1.2.6.重命名 1.2.7.编码 1.2.8.设置JDK本地JavaDOC API路径及源码路径 1.3.快捷键 1.3.1.Eclipse快捷键大全 1.4.调试(debug) 1.4.1.设置断点 1.4.2.启动调试 1.4.3.执行调试 二.类型

Java与WCF交互(一):Java客户端调用WCF服务

最近开始了解WCF,写了个最简单的Helloworld,想通过java客户端实现通信.没想到以我的基础,居然花了整整两天(当然是工作以外的时间,呵呵),整个过程大费周折,特写下此文,以供有需要的朋友参考: 第一步:生成WCF服务 新建WCF解决方案,分别添加三个项目,HelloTimeService(类库),HelloTimehost(控制台程序),HelloTimeClient(控制台程序),项目结构如图:各个项目的主要代码:service: Host: Client: 编译通过后,测试Hos

Java中serialVersionUID的解释

Java中serialVersionUID的解释 serialVersionUID作用:        序列化时为了保持版本的兼容性,即在版本升级时反序列化仍保持对象的唯一性. 有两种生成方式: 一个是默认的1L,比如:private static final long serialVersionUID = 1L; 一个是根据类名.接口名.成员方法及属性等来生成一个64位的哈希字段,比如:        private static final   long     serialVersionU

设置查看java的源程序

1.点 “window”-> "Preferences" -> "Java" -> "Installed JRES" 2.此时"Installed JRES"右边是列表窗格,列出了系统中的 JRE 环境,选择你的JRE,然后点边上的 "Edit...", 会出现一个窗口(Edit JRE) 3.选中rt.jar文件的这一项:“c:\program files\java\jre_1.5.0_

开发Java web时让Eclipse支持编写HTML/JS/CSS/JSP页面的自动提示

平时用eclipse开发jsp页面时智能提示效果不太理想,其实eclipse也可以像Visual Studio 2008那样完全智能提示HTML/JS/CSS代码,使用eclipse自带的插件,无需另外安装插件,具体步骤如下 1.打开eclipse→Windows→Preferences→Java→Editor→Content Assist 修改Auto Activation triggers for java的值为:zjava   点击apply按钮 如图: 2.继续打开JavaScript→

eclipse进行Debug的时候,发出“java breakpoint unable to install breakpoint”错误

错误情况图: 问题的解决方法: 直接点击忽略掉:Don't tell me again 来自网上的答案~~ I had the same error message in Eclipse 3.4.1, SUN JVM1.6.0_07 connected to Tomcat 6.0 (running in debug-mode on a different machine, Sun JVM1.6.0_16, the debug connection did work correctly). Win