Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java gridView-strings.xml中的数组_Java_Android_Gridview - Fatal编程技术网

Java gridView-strings.xml中的数组

Java gridView-strings.xml中的数组,java,android,gridview,Java,Android,Gridview,我正在尝试创建一个多语言应用程序,但我的主页是一个由图像和文本视图组成的gridView。当我用Java创建一个列表时(如下所示): 它工作得很好。但是我意识到我不应该用Java创建列表,而是使用strings.xml文件中已经创建的数组,这样我的应用程序就可以被翻译。基本上,我想要这个数组中的文本。我该怎么做 谁能帮我一下吗?如果有人想测试它,完整的代码是: package br.com.unbparaestrangeiros.unbparaestrangeiros; import

我正在尝试创建一个多语言应用程序,但我的主页是一个由图像和文本视图组成的gridView。当我用Java创建一个列表时(如下所示):


它工作得很好。但是我意识到我不应该用Java创建列表,而是使用strings.xml文件中已经创建的数组,这样我的应用程序就可以被翻译。基本上,我想要这个数组中的文本。我该怎么做

谁能帮我一下吗?如果有人想测试它,完整的代码是:

    package br.com.unbparaestrangeiros.unbparaestrangeiros;

import android.app.Activity;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.GridView;

public class MainActivity extends Activity{
    GridView gridView;

    Resources r = getResources();
    String[] textoList = r.getStringArray(R.array.itens);

    //String textoList[] = {"Visto", "Alojamento", "C.P.F.", "Alimentação", "Carteirinha", "Guia", "Registro", "Informações", "Assistência", "Biblioteca", "Calendário", "Transporte", "INT", "Intérprete", "F.A.Q."};

    int textoImagem[] = {R.drawable.visto, R.drawable.alojamento, R.drawable.cpf, R.drawable.alimentacao, R.drawable.carteirinha, R.drawable.guia,  R.drawable.registro, R.drawable.informacoes, R.drawable.assistencia,  R.drawable.biblioteca, R.drawable.calendario, R.drawable.transporte,  R.drawable.informacoes, R.drawable.interprete, R.drawable.perguntas};

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.inicio);

        gridView = (GridView) findViewById(R.id.gridView);

        GridAdapter adapter = new GridAdapter(MainActivity.this, textoImagem, textoList);

        gridView.setAdapter(adapter);

        gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                switch (position) {
                    case 0:
                        Intent case0 = new Intent(MainActivity.this, Visto.class);
                        startActivity(case0);
                        break;

                    case 1:
                        Intent case1 = new Intent(MainActivity.this, Alojamento.class);
                        startActivity(case1);
                        break;

                    case 2:
                        Intent case2 = new Intent(MainActivity.this, CPF.class);
                        startActivity(case2);
                        break;

                    case 3:
                        Intent case3 = new Intent(MainActivity.this, Alimentacao.class);
                        startActivity(case3);
                        break;

                    case 4:
                        Intent case4 = new Intent(MainActivity.this, Carteirinha.class);
                        startActivity(case4);
                        break;

                    case 5:
                        Intent case5 = new Intent(MainActivity.this, Guia.class);
                        startActivity(case5);
                        break;

                    case 6:
                        Intent case6 = new Intent(MainActivity.this, Registro.class);
                        startActivity(case6);
                        break;

                    case 7:
                        Intent case7 = new Intent(MainActivity.this, Informacoes.class);
                        startActivity(case7);
                        break;

                    case 8:
                        Intent case8 = new Intent(MainActivity.this, Assistencia.class);
                        startActivity(case8);
                        break;

                    case 9:
                        Intent case9 = new Intent(MainActivity.this, Biblioteca.class);
                        startActivity(case9);
                        break;

                    case 10:
                        Intent case10 = new Intent(MainActivity.this, Calendario.class);
                        startActivity(case10);
                        break;

                    case 11:
                        Intent case11 = new Intent(MainActivity.this, Transporte.class);
                        startActivity(case11);
                        break;

                    case 12:
                        Intent case12 = new Intent(MainActivity.this, Assessoria.class);
                        startActivity(case12);
                        break;

                    case 13:
                        Intent case13 = new Intent(MainActivity.this, Interprete.class);
                        startActivity(case13);
                        break;

                    case 14:
                        Intent case14 = new Intent(MainActivity.this, Perguntas.class);
                        startActivity(case14);
                        break;

                }
            }
        });
    }

}
package br.com.unbparaestrangeiros.unbparaestrangeiros;
导入android.app.Activity;
导入android.content.Intent;
导入android.content.res.Resources;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.AdapterView;
导入android.widget.GridView;
公共类MainActivity扩展了活动{
GridView;
Resources r=getResources();
String[]textoList=r.getStringArray(r.array.itens);
//字符串textoList[]={“Visto”、“Alojamento”、“C.P.F.”、“Alimentaço”、“Carterinha”、“Guia”、“Registro”、“Informaçess”、“Assistçncia”、“Biblioteca”、“Calendario”、“Transporte”、“INT”、“INTérprete”、“F.A.Q.”;
int textoImagem[]={R.drawable.visto,R.drawable.alojamento,R.drawable.cpf,R.drawable.alimentaco,R.drawable.carterinha,R.drawable.guia,R.drawable.registro,R.drawable.informacoes,R.drawable.assistencia,R.drawable.biblioteca,R.drawable.calendario,R.drawable.transport,R.drawable.informacoes,R.drawable.perguntas};
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.ini);
gridView=(gridView)findViewById(R.id.gridView);
GridAdapter=新的GridAdapter(MainActivity.this、textoImagem、textoList);
setAdapter(适配器);
setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
开关(位置){
案例0:
意向案例0=新意向(MainActivity.this,Visto.class);
星触觉(case0);
打破
案例1:
意向案例1=新意向(MainActivity.this,Alojamento.class);
星触觉(案例1);
打破
案例2:
意向案例2=新意向(MainActivity.this,CPF.class);
星触觉(案例2);
打破
案例3:
意向案例3=新意向(MainActivity.this,alimentaco.class);
星触觉(案例3);
打破
案例4:
意向案例4=新意向(MainActivity.this,Carteirinha.class);
星触觉(案例4);
打破
案例5:
意向案例5=新意向(MainActivity.this、Guia.class);
星触觉(案例5);
打破
案例6:
意向案例6=新意向(MainActivity.this,Registro.class);
星触觉(案例6);
打破
案例7:
意向案例7=新意向(MainActivity.this,Informacoes.class);
星触觉(案例7);
打破
案例8:
意向案例8=新意向(MainActivity.this,Assistencia.class);
星触觉(案例8);
打破
案例9:
意向案例9=新意向(MainActivity.this,Biblioteca.class);
星触觉(案例9);
打破
案例10:
意向案例10=新意向(MainActivity.this,Calendario.class);
星触觉(案例10);
打破
案例11:
意向案例11=新意向(MainActivity.this,transport.class);
星触觉(案例11);
打破
案例12:
意向案例12=新意向(MainActivity.this,Assessoria.class);
星触觉(案例12);
打破
案例13:
意向案例13=新意向(MainActivity.this,exploration.class);
星触觉(案例13);
打破
案例14:
意向案例14=新意向(MainActivity.this,Perguntas.class);
星触觉(案例14);
打破
}
}
});
}
}

试试这个:

String[] textoList;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.inicio);

    textoList = getResources().getStringArray(R.array.itens);
}
以及
strings.xml
中的
itens
数组,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    ...............
    ......................
    <string-array name="itens">
        <item>Visto</item>
        <item>Alojamento</item>
        <item>C.P.F.</item>
        <item>Alimentação</item>
        <item>Carteirinha</item>
        <item>Guia</item>
        <item>Registro</item>
        ................
        .......................
    </string-array>
</resources>

...............
......................
维斯托
阿罗贾曼托
到岸价。
食品
卡特里尼亚
圭亚
登记处
................
.......................

希望这将有助于~

app/src/main/res/values
中创建一个名为
array.xml
的新文件。您可以这样添加字符串:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="itens">
        <item>Visto</item>
        <item>Alojamento</item>
        <!--Add your other words here-->
    </string-array>
</resources>

维斯托
阿罗贾曼托

您可以使用
getResources().getStringArray(R.array.itens);
从您的
活动中访问它们
String[]textoList[]=getResources().getStringArray(R.array.itens);
从oncreate中的strings.xml访问它们。注意,您有
String[]textoList=R.getStringArray(R.itens)<
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="itens">
        <item>Visto</item>
        <item>Alojamento</item>
        <!--Add your other words here-->
    </string-array>
</resources>