0

我正在开发一个跨多个类的应用程序,因此,我必须将应用程序的上下文传递给所有使用全局字符串或整数的类,以便从 strings.xml 或 dimens 中提取它们。 xml 文件,而不是对它们进行硬编码。到目前为止,我一直在加载曾经需要的资源,但我想知道在构造函数的类上加载我需要的所有资源是否会更有效,请记住它们只是字符串和整数值。

4

1 回答 1

0

对于小对象(字符串、数字),您可以预加载它们,因为它不会占用太多内存。

对于大对象(图像、媒体),最好根据需要加载。

我个人对小对象的偏好是延迟加载它们(根据需要加载,但加载后保留在内存中以备后用),例如:

public class Values{
     private static Object pref1;

    public static Object getPreference1(){
         if(pref1 == null){
             pref1 = heavyLoadingOfPref1();
         }
         return pref1;
    }
} 

正如,注意到我将它用于各种小对象,对于字符串(尤其是本地资源),像这样加载它们更麻烦,只需在开始时加载一次(如果你已经定义了它们,那么它们更有可能会使用)。

于 2012-09-26T07:29:38.583 回答