首页 > 解决方案 > 如何使用资源 id (R.string.) 将 ArrayAdapter 设置为字符串数组

问题描述

  1. 我试图将资源中的返回值转换为字符串,但它不起作用。

  2. 这是我的代码:

     import androidx.appcompat.app.AppCompatActivity;
     import android.os.Bundle;
     import android.widget.ArrayAdapter;
     import android.widget.ListView;
    
     public class MainActivity extends AppCompatActivity {
    
         String[] storiesTitles = {(String) getText(R.string.first_story_title), (String) getText(R.string.second_story_title), (String) getText(R.string.third_story_title)};
    
         @Override
         protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.activity_main);
    
             ArrayAdapter adapter = new ArrayAdapter(MainActivity.this, android.R.layout.simple_expandable_list_item_1, storiesTitles);
    
             ListView list = findViewById(R.id.lv_stories);
             list.setAdapter(adapter);
    
         }
     }
    

标签: javaandroidarrayslistview

解决方案


在 onCreate 函数中调用字符串数组

    public class MainActivity extends AppCompatActivity {
    
    
         @Override
         protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.activity_main);
   
 String[] storiesTitles = {(String) getText(R.string.first_story_title), (String) getText(R.string.second_story_title), (String) getText(R.string.third_story_title)};

             ArrayAdapter adapter = new ArrayAdapter(MainActivity.this, android.R.layout.simple_expandable_list_item_1, storiesTitles);
    
             ListView list = findViewById(R.id.lv_stories);
             list.setAdapter(adapter);
    
         }
     }

推荐阅读