0
我有一個類包含私人boolean
和ArrayList
。我想用我的ArrayList
中的元素填充Spinner
,但是如果boolean
爲真,我想顯示所有元素,否則我希望隱藏某個範圍中的某些元素。我試過以下內容:隱藏Spinner中的一些元素
Spinner modeSpinner = (Spinner) v.findViewById(R.id.btn_setup_mode_spinner);
ArrayList<String> modeList = enc.getModes();
ArrayAdapter<String> modeAdapter = new ArrayAdapter<String>(v.getContext(), android.R.layout.simple_spinner_item, modeList);
modeAdapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
modeSpinner.setAdapter(modeAdapter);
if(!boolean){
for(int i=4;i<8;i++){
modeAdapter.remove((String) modeAdapter.getItem(i));
modeAdapter.notifyDataSetChanged();
}
}
但它不起作用。這是正確的方法來做到這一點? 更新:工作代碼
Spinner modeSpinner = (Spinner) v.findViewById(R.id.btn_setup_mode_spinner);
ArrayList<String> modeList = enc.getModes();
ArrayAdapter<String> modeAdapter = new ArrayAdapter<String>(v.getContext(), android.R.layout.simple_spinner_item, modeList);
modeAdapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
modeSpinner.setAdapter(modeAdapter);
if(!boolean){
for(int i=4;i<modeList.size();i++){
modeAdapter.remove(modeList.get(i));
modeAdapter.notifyDataSetChanged();
i--;
}
}
雖然我必須每次啓動ArrayList,但它仍然有效。 (getModes被靜態訪問)我也必須改變for循環。 – Vektor88