我有一个微调器,我已经为微调器添加了一个自定义样式。问题是当我选择一个它没有显示在微调器上的项目但是当我使用android微调器样式时它显示我在微调器上选择的内容。是否还有其他编码可以使其正常工作?否则旋转器的旋转工作。我在微调器中选择一个项目以显示文本时编写了应用程序。这些东西都有用。但它并没有显示我选择的内容。
这是我的代码
MyAdapter dataAdapter3 = new MyAdapter(this, R.layout.spinner, list3);
spinner1.setAdapter(dataAdapter3);
列表3引用列表
List<String> list3 = new ArrayList<String>();
以下是自定义微调器样式的类
public class MyAdapter extends ArrayAdapter<String>
{
private List<String> listString = new ArrayList<String>();
public MyAdapter(Context context, int textViewResourceId, List<String> objects) {
super(context, textViewResourceId, objects);
this.listString = objects;
}
@Override
public View getDropDownView(int position, View convertView,ViewGroup parent) {
return getCustomView(position, convertView, parent);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
return getCustomView(position, convertView, parent);
}
public View getCustomView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater=getLayoutInflater();
View row=inflater.inflate(R.layout.spinner, parent, false);
TextView label=(TextView)row.findViewById(R.id.textView1);
label.setText(listString.get(position));
return row;
}
}
请有人告诉我这里是否有任何错误吗? 这是我选择项目时微调器的显示方式
答案 0 :(得分:7)
我在这个问题上试了几天。实际上代码还不错。问题出在spinner.xml文件中。我在textview中添加了一个大填充。因此,尽管微调器工作,但它在微调器上看不到所选项。点是我忘了xml文件。 :d
答案 1 :(得分:0)
修改 layout spinner.xml 文件中的 padding 为较低的值, 例如:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="8dp"
android:textColor="#000000"
android:textSize="14sp" />