Java 自定义样式setDropDownViewResource Android微调器

Java 自定义样式setDropDownViewResource Android微调器,java,android,xml,Java,Android,Xml,下面是我当前的代码,它将我的数组微调器添加到我的适配器,然后将适配器添加到我的微调器。 问题: 1-我不确定如何使用以下代码来设置下拉列表的样式:areaspinner.setDropDownViewResource(android.R.layout.simple\u spinner\u dropdown\u项目)以及如何应用自定义视图/文本视图?我需要在微调器下拉列表中设置文本项的样式 2-是否需要为此视图创建单独的layout.xml文件 任何信息都很好。谢谢 array_spinner=n

下面是我当前的代码,它将我的数组微调器添加到我的适配器,然后将适配器添加到我的微调器。 问题:

1-我不确定如何使用以下代码来设置下拉列表的样式:
areaspinner.setDropDownViewResource(android.R.layout.simple\u spinner\u dropdown\u项目)以及如何应用自定义视图/文本视图?我需要在微调器下拉列表中设置文本项的样式

2-是否需要为此视图创建单独的layout.xml文件

任何信息都很好。谢谢

array_spinner=new String[4];
array_spinner[0]="Select";
array_spinner[1]="George Washington";
array_spinner[2]="Benjamin Franklin";
array_spinner[3]="Thomas Jefferson";

 //CREATE SPINNER
areaspinner = (Spinner) findViewById(R.id.areaspinner);

ArrayAdapter<String> adapter = 
    new ArrayAdapter<String> (this, android.R.layout.simple_spinner_item,array_spinner);
areaspinner.setAdapter(adapter);
array_spinner=新字符串[4];
数组_微调器[0]=“选择”;
数组_微调器[1]=“George Washington”;
数组_微调器[2]=“Benjamin Franklin”;
数组_微调器[3]=“Thomas Jefferson”;
//创建微调器
areaspinner=(Spinner)findViewById(R.id.areaspinner);
阵列适配器=
新的ArrayAdapter(这是android.R.layout.simple_spinner_项,array_spinner);
areaspinner.setAdapter(适配器);
  • 如果您的目的是实现与微调器视图所选项目样式有关的下拉列表项目的不同样式,则必须向
    setDropDownViewResource()
    提供自定义布局id。在布局中,您只需将
    TextView
    声明为根元素,因为
    ArrayAdapter

  • 是的,您需要在res/layout目录中为您声明的每个布局创建单独的_layout_name.xml文件


  • 您不必使用setDropDownViewResource(),只需提供自己的主题并覆盖样式即可。请参见我的答案:

    这是如何在代码中使用setDropDownViewResource()

    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    areaspinner.setAdapter(adapter);
    

    当然有帮助。

    定义一个客户微调器_layout.xml,将TextView作为根视图。 设置适配器布局时,请使用以下代码:

    ArrayAdapter<String> adapter1 = new ArrayAdapter<>(getActivity(), R.layout.layout_spinner, days);
    

    这很有帮助!通过创建一个名为spinner_layout.xml的新布局,然后添加adapter.setDropDownViewResource(R.layout.spinner_layout),我最终实现了它的功能;再次感谢。
    adapter1.setDropDownViewResource(R.layout.layout_spinner);