【问题标题】:arrayListOf showing Int rather than String - KotlinarrayListOf 显示 Int 而不是 String - Kotlin
【发布时间】:2021-10-12 19:53:55
【问题描述】:

我正在尝试从这样的字符串文件中获取字符串值:

var language = arrayListOf<String>(
    R.string.All_Categories.toString(),
    
)

但它显示的是 Int 而不是这样的字符串:

我做错了什么?

【问题讨论】:

    标签: android string kotlin arraylist


    【解决方案1】:

    R.string.All_Categories 是 id,而不是字符串本身

    获取你需要使用的字符串

    var value = getString(R.string.All_Categories)

    【讨论】:

      【解决方案2】:

      问题是您正在对生成的参考执行toString。如果这是您引用的数组的名称,您应该使用 R.array.All_Categories。例如,资源文件中有以下内容。

      <?xml version="1.0" encoding="utf-8"?>
      <resources>
          <string-array name="my_books">
              <item>Scala Cookbook</item>
              <item>Play Framework Recipes</item>
              <item>How I Sold My Business: A Personal Diary</item>
              <item>A Survival Guide for New Consultants</item>
          </string-array>
      </resources>
      

      这就是您希望在代码中阅读它的方式。

      Resources res = getResources();
      String[] myBooks = res.getStringArray(R.array.my_books);
      

      片段中的 Kotlin 代码示例:

      val res: Resources = resources
      val myBooks: Array<String> = res.getStringArray(R.array.my_books)
      

      您可以在Array&lt;String&gt; 上使用.toList() 将其转换为您所期望的arrayListOf&lt;String&gt; 之类的集合对象。

      【讨论】:

        【解决方案3】:

        解决方案:

        首先,在 OnCreate 中必须定义字符串:

        val Profile_Settings = resources.getString(R.string.ProfileSettings)
        

        其次,将值添加到数组中:

        var language2 = arrayListOf<String>(
                Profile_Settings,
                
            )
        

        【讨论】:

          【解决方案4】:

          这很简单,您只需使用getString(your_string_id) 就可以了!

          看起来像这样:

          val data = getString(R.string.all_categories) 
          

          【讨论】:

            猜你喜欢
            • 2010-11-13
            • 1970-01-01
            • 2021-12-30
            • 1970-01-01
            • 1970-01-01
            • 2021-09-14
            • 2021-12-06
            • 1970-01-01
            • 2021-12-08
            相关资源
            最近更新 更多