Activity构造函数中的最终字段初始化

时间:2013-11-01 09:05:22

标签: android android-activity

此代码有问题吗?

public class MyActivity extends Activity {
    private final String[] names;

    public MyActivity() {
        names = new String[]{
            getString(R.string.strion_one),
            getString(R.string.string_two),
            getString(R.string.string_three),
        };
    }    

    ...

}

1 个答案:

答案 0 :(得分:2)

如果我理解你的问题,你会尝试创建一个包含资源链接的类。所以我建议你创建一个包含资源链接的类。

 public class MyResources{

    private final String[] myStrings;
    public MyResources(Context context)
    {
        myStrings = new String[]{};
        myStrings[0] = context.getResources().getString(R.string.string_one);
        myStrings[100] = context.getResources().getString(R.string.string_one_hun);
    }

    public String getStringAtNumber(int value)
    {
        return myStrings[0];
    }
}

是的!还有一件事。只有在onCreate执行后才能获取资源。