2013-03-05 44 views
0

我正在构建应用程序并在以下区域使用标签。在Android中处理软标签

1. Component Names (TextView, Buttons etc) 
2. Buttons in alert boxes 
3. Parameters to AsyncTask 
4. Key names in Intent extras 
5. Log tags 

我得到了strings.xml文件来存储和使用标签。我正在使用它用于类别1.您认为对于其他用户最好的选择是什么?

res/strings.xml或 常量类?

+0

带静态变量的类,并访问它们 – Pragnani 2013-03-05 10:19:17

回答

1

我会建议你什么,我通常做:

的一切,用户将在屏幕上阅读或者反正从XML布局,使用的strings.xml引用。我认为这包括你的1和2.但请记住,对于AlertDialogues,你也可以使用android.R.string.okandroid.R.string.cancel等;从使用到使用会有所不同。

此外,对于项目配置值或API密钥,您可以使用String,Integers等的config.xml文件。以后可以轻松更改这些值而不会潜入代码中。

对于AsyncTask,它在做什么工作上有很多不同,但通常是网络,数据库或磁盘操作,并且我试图在类中包含private static final String URL_PT1 = "http://...";等,因为它们是唯一有兴趣知道的地址(或DB列,或文件前缀)

键名(都在意图和片段参数)我用private static final String KEY_VALUE = "renjith.Key.MyClassName.VALUE";,然后创建一个public static Bundle getIntentExtras(String value)那类,将合理分配在额外的价值里面。那是因为只有一个类需要知道它是关键值,所以没有理由让这些公共访问,这只会给外部类错误地创建错误。

对于日志(5),在每个类上创建一个private static final String TAG = "Renjith.ThisClassName";(并且对于碎片使TAG公开在事务中使用)。这样,你可以在logcat的Renjith创建过滤器*,您可以从那里此日志会从

来轻松识别

编辑:

对于sharedpreferences这取决于:

为GlobalSharedPreferences我会创造一个类通过静态设置/获取方法来处理它们,这些方法必须接收上下文以及该类内的所有密钥private static

对于本地共享首选项(只有一个类有兴趣保存/检索),我将在SharedPreferences文件中处理与该类相同的名称以及在该类中的所有关键字private static

同样的理念,只有真正需要了解这些细节的类才会知道它们,并通过直接方法调用抽象到其余类。

+0

感谢您的输入! SharedPreference键怎么样? – Renjith 2013-03-05 10:30:48

+0

检查我的编辑! =) – Budius 2013-03-05 10:36:22

+0

谢谢Budius! :-) – Renjith 2013-03-05 10:40:43