Java 微调器不显示所选项目

Java 微调器不显示所选项目,java,android,Java,Android,我正在从数据库加载一个JSON列表。我使用此列表设置适配器并将其添加到微调器。当我单击微调器时,我可以看到添加的元素列表。当我单击其中一个元素时,我确实会得到带有该值的Toast,但在关闭微调器后不会显示 我在我的旋转器上使用setSelection,但似乎不起作用 谢谢你一如既往的帮助 阵列适配器 adapter = new ArrayAdapter<String>(getApplicationContext(), android.R

我正在从数据库加载一个JSON列表。我使用此列表设置适配器并将其添加到微调器。当我单击微调器时,我可以看到添加的元素列表。当我单击其中一个元素时,我确实会得到带有该值的Toast,但在关闭微调器后不会显示

我在我的旋转器上使用setSelection,但似乎不起作用

谢谢你一如既往的帮助

阵列适配器

        adapter = new ArrayAdapter<String>(getApplicationContext(),
                android.R.layout.simple_spinner_item, brands);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        marca.setAdapter(adapter);

        marca.post(new Runnable() {
            @Override
            public void run() {
                marca.setSelection(0, false);
            }
        });

        marca.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
        {

            @Override
            public void onItemSelected(AdapterView<?> arg0, View arg1,int position, long id) {
                // TODO Auto-generated method stub
                marca.setSelection(position);
                marcaMandar = brands.get(position);
                Toast.makeText(getBaseContext(), marcaMandar, Toast.LENGTH_SHORT).show();

            }

            @Override
            public void onNothingSelected(AdapterView<?> arg0) {
                // TODO Auto-generated method stub

            }

        });
adapter=new ArrayAdapter(getApplicationContext(),
android.R.layout.simple_微调器(项目、品牌);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
marca.setAdapter(适配器);
marca.post(新Runnable(){
@凌驾
公开募捐{
marca.setSelection(0,false);
}
});
marca.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener()
{
@凌驾
已选择公共位置(AdapterView arg0、视图arg1、整型位置、长id){
//TODO自动生成的方法存根
marca.选举(职位);
marcaMandar=brands.get(位置);
Toast.makeText(getBaseContext(),marcaMandar,Toast.LENGTH_SHORT).show();
}
@凌驾
未选择公共无效(AdapterView arg0){
//TODO自动生成的方法存根
}
});
您应该添加

adapter.notifyDataSetChanged();
这将刷新附加到适配器的UI控件,以修改它并显示所选项目

正如Android参考资料中提到的:

notifyDataSetChanged()

通知所连接的观察者 基础数据已更改,任何反映数据集的视图 应该刷新自身


经过多次尝试和错误,我终于能够使它工作了。似乎需要更改默认布局类型,这使其正常工作。非常感谢所有回答的人

ArrayAdapter<String> adapter;
    adapter = new ArrayAdapter<String>(Preferencias.this, android.R.layout.simple_list_item_1, brands);
    adapter.notifyDataSetChanged();
    marca.setAdapter(adapter);
阵列适配器;
适配器=新阵列适配器(Preferencias.this、android.R.layout.simple\u list\u item\u 1、品牌);
adapter.notifyDataSetChanged();
marca.setAdapter(适配器);

显示什么?这是它的外观感谢您的帮助。在这些屏幕截图中,选中后,marca Abarth将显示在spinner中。我不明白你的问题。。您不需要手动设置选择。是自动生成的。但我需要能够在微调器本身上看到所选内容,而不是在烤面包上。您的意思是更改文本的颜色吗?据我所知,它是白色的,这可能是一个问题。这是我所做的更改,仍然不起作用,但谢谢你的回答。阵列适配器;adapter=new ArrayAdapter(getApplicationContext(),android.R.layout.simple\u微调器\u项,modelos);setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);adapter.notifyDataSetChanged();modelo.setAdapter(适配器);