[英]how to set adapter for spinner
如果我有ArrayList<HashMap<String, String>>
coursesList,如何將適配器設置為微調框,該列表將顯示要顯示的構造信息
我應該使用什么類型的適配器?
ArrayAdapter應該可以工作。 嘗試使用字符串[]。
Spinner s = null;
final String[] choices = {"1","2"};
ArrayAdapter<String> a =new ArrayAdapter<String>(ObservationSubmit.this,android.R.layout.simple_spinner_item, choices);
a.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
s.setAdapter(a);
String[] arraySpinner = new String[] {
"1", "2", "3", "4", "5", "6", "7"
};
Spinner s = (Spinner) findViewById(R.id.Spinner01);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, arraySpinner);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
s.setAdapter(adapter);
import android.content.Context;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
import com.agreeta.firebasedatabasedemo.R;
import java.util.ArrayList;
import java.util.HashMap;
public class TestAdapter extends ArrayAdapter {
private Context mContext;
private ArrayList<HashMap<String, String>> hashMapArrayList = new ArrayList<>();
public TestAdapter(@NonNull Context context, ArrayList<HashMap<String, String>> list) {
super(context, 0 , list);
mContext = context;
hashMapArrayList = list;
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
View listItem = convertView;
if(listItem == null)
listItem = LayoutInflater.from(mContext).inflate(R.layout.like_row,parent,false);
TextView release = (TextView) listItem.findViewById(R.id.tv_title);
release.setText(hashMapArrayList.get(position).get("key"));
return listItem;
}
}
試試這個例子。 這里的“鍵”是您的HashMap鍵,通過它您可以將值設置為微調器的行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.