java - 如何在 Spinner 上使用 setdropdown

标签 java android eclipse spinner

我只想对 Spinner 项目上的下拉列表进行成本化,但我不知道如何在我的代码中应用 adapter.setDropDownViewResource(R.layout.simple_spinner_dropdown_item); :

sp_period_q = (Spinner) findViewById(R.id.spin_per_q);
sp_period_q.setAdapter(new ArrayAdapter<String>(this,
            R.layout.spinner_item, Utils.getQuantities())); 

最佳答案

假设您也重写了 getDropDownView 方法,那么使用 setDropDownViewResource(int layoutResourceId) 执行此操作的方式应该有效。

从您的重写方法中调用 super.getDropDownView 将负责膨胀并将您传回正确的布局,然后您将按照您想要的方式进行设置。

类似于:

@Override
public View getDropDownView (int position, View convertView, ViewGroup parent) {
    // Let super.getDropDownView do the work of inflating and returning
    // to us the right drop down view resource.
    View view = super.getDropDownView(position, convertView, parent);

    // Setup your view here

    return view;
}

但是,当您在 Spinner 上调用 setAdapter 时,您似乎正在创建另一个 ArrayAdapter。

您必须在调用 setAdapter 之外创建 ArrayAdapter,然后将创建的适配器传递给 setAdapter。

关于java - 如何在 Spinner 上使用 setdropdown,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31659536/

相关文章:

java - Android - 检查文件扩展名是否为 .mp4

android - 上传到 Play 商店后 map Activity 空白

java - AppEngine 连接的 Android 项目中的注释失败

java - 一个 Exception 方法,它记录并抛出异常,该异常作为参数出现

java - ANTLR BNF 语法符号中 epsilon 的等价物是什么?

java - com.ibm.jsse2.util.j : Certificate chaining error while accessing a page through https in notes agent

eclipse - 具有 Windows shell 扩展和 Eclipse 集成的 SVN 客户端

android - 如何返回到之前的 Activity ?

java - 检查 Android 中另一个线程中的任务是否已经完成

java - 有没有java/java IDE的语义查询工具?