Не удается разрешить «массив» в R.array.items (android studio) - PullRequest
4 голосов
/ 16 марта 2020

Я знаю, что многие подобные вопросы уже существуют, но я просмотрел их и не смог найти ответ.

По какой-то причине ключевое слово "массив" подчеркнуто красным, и я получаю ошибка: не удается разрешить «массив». Я построил проект, проверил мой xml файл, но я просто не могу понять, что не так.

package com.example.listapp;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.ListView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    ListView myListView;
    String[] fruits;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Resources res = getResources();
        myListView = (ListView)findViewById(R.id.my_list_view);
        fruits = res.getStringArray(R.array.items);
    }
}

Также вот мой файл strings. xml (в res / values ​​/ strings. xml):

<resources>
    <string name="app_name">List App</string>

    <string-array name="items">
        <item>peach</item>
        <item>apple</item>
        <item>banana</item>
    </string-array>

    <string-array name="prices">
        <item>$1.49</item>
        <item>$0.99</item>
        <item>$0.89</item>
    </string-array>

    <string-array name="descriptions">
        <item>Fresh peaches from Georgia</item>
        <item>Fresh apples from Ohio</item>
        <item>Fresh bananas from California</item>
    </string-array>
</resources>

Строка с ошибкой:

fruits = res.getStringArray (R.array.items);

enter image description here

Ответы [ 4 ]

4 голосов
/ 16 марта 2020

Замените res на getResources()

Попробуйте так:

final String[] values = getResources().getStringArray(R.array.items);

Clean и Re-Build ваш проект или Invalid Crashes/ Restart

1 голос
/ 16 марта 2020
String[] values = getResources().getStringArray(R.array.items);

Это будет работать. Если вы все еще получаете ошибку, пожалуйста, Build-> Clean Project или Файл-> Invalid Crashes / Restart

I думаю, это решит вашу проблему

1 голос
/ 16 марта 2020
 <array name="select_city">
        <item>Surat</item>
        <item>Ahmedabad</item>
        <item>Vadodara</item>
        <item>Anand</item>
        <item>Amreli</item>
        <item>Rajkot</item>
    </array>

тогда используйте вот так

 String [] abc=getResources().getStringArray(R.array.select_city);
0 голосов
/ 16 марта 2020

Основная причина этой ошибки - у вас нет файла array.xml в папке значений, которую вы создали string-array в string.xml

Решение:

Создайте файл array.xml в папке значений и скопируйте и вставьте все string-array в array.xml

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...