[英]Show icons only in drop-down of custom Spinner
我已經使用帶有圖標和文本的適配器創建了一個Spinner
器。 一切都可以正確顯示,但是活動微調器必須僅顯示文本。 圖標僅應出現在下拉列表中。 這可能實現嗎?
public class CustomAdapter extends BaseAdapter {
Context context;
int flags[];
String[] countryNames;
LayoutInflater inflter;
public CustomAdapter(Context applicationContext, int[] flags, String[] countryNames) {
this.context = applicationContext;
this.flags = flags;
this.countryNames = countryNames;
inflter = (LayoutInflater.from(applicationContext));
}
[id3844467|@Override]
public int getCount() {
return flags.length;
}
[id3844467|@Override]
public Object getItem(int i) {
return null;
}
[id3844467|@Override]
public long getItemId(int i) {
return 0;
}
[id3844467|@Override]
public View getView(int i, View view, ViewGroup viewGroup) {
view = inflter.inflate(R.layout.custom_spinner_items, null);
ImageView icon = (ImageView) view.findViewById(R.id.imageView);
TextView names = (TextView) view.findViewById(R.id.textView);
icon.setImageResource(flags[i]);
names.setText(countryNames[i]);
return view;
}
}
XML
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <ImageView android:id="@+id/imageView" android:layout_width="40dp" android:layout_height="40dp" android:padding="5dp" android:src="@drawable/ic_launcher" /> // for check that icon existing <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:padding="0dp" android:text="Demo" // for check that text existing android:textColor="#000" /> </LinearLayout>
將這兩個屬性設置為微調器希望它將完全起作用
android:dropDownHeight="0dp"
android:dropDownWidth="0dp"
我不確定,但是像這樣更改您的getItemId:
@Override
public long getItemId(int position) {
return position;
}
並且不要在getItem上返回null
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.