Android Studio使用string-array的方法

2019-12-13  本文已影响0人  sssssss_

在未使用string-array方法之前,我打算把Strings.xml资源文件的字符串以List一个个的Add进来,再把List拿去用。

这样一来,代码中就会有一段段的String资源文件,怎么看怎么不顺眼,要是敢把这样的代码提交,肯定会被骂的。

    private void setSortOrder() {
        mSortList = new ArrayList<>();
        mSortList.add(this.getString(R.string.1));
        mSortList.add(this.getString(R.string.2));
        mSortList.add(this.getString(R.string.3));
        mSortList.add(this.getString(R.string.4));
        mSortList.add(this.getString(R.string.5));
        mSortList.add(this.getString(R.string.6));
    }

为了解决这个问题,我特意去看看项目中是否存在类似的代码,于是我就发现了他们都会把String写在string-array,这个方法在我刚学的时候就接触过,为什么我会忘记了呢?好吧,我就重新修改了我的代码:

    <string-array name="file_project_mothod_array">
        <item>@string/1</item>
        <item>@string/2</item>
        <item>@string/3</item>
        <item>@string/4</item>
        <item>@string/5</item>
        <item>@string/6</item>
    </string-array>
private String[] mSortMothodArray;
// 获取Array数组
mSortMothodArray = getResources()
    .getStringArray(R.array.file_project_mothod_array);

mBtnSort.setText(mSortMothodArray[mSelectSortIndex]);

需要注意的是,不同的模块的Arrays.xml是不一样的,当时我还在为这个问题纠结了一下。

上一篇下一篇

猜你喜欢

热点阅读