我在Android總線預訂應用工作的相互選擇,以及我不得不做出這樣的具有相同的值例如兩個微調城市名稱。一個微調是選擇你的來源城市,第二個微調是爲目的地城市。2個相同值紡紗如何依賴於一個離心器隱藏在第二微調該值
幫助我如何管理像第一微調選擇一個項目(城市名)這兩個微調器隱藏在第二微調該項目。
我在Android總線預訂應用工作的相互選擇,以及我不得不做出這樣的具有相同的值例如兩個微調城市名稱。一個微調是選擇你的來源城市,第二個微調是爲目的地城市。2個相同值紡紗如何依賴於一個離心器隱藏在第二微調該值
幫助我如何管理像第一微調選擇一個項目(城市名)這兩個微調器隱藏在第二微調該項目。
這是我做我的ListView ...這也應該適用於微調我已經修改了一點微調爲
ArrayAdapter<String> arrayAdapter2 = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_multiple_choice,yourArray);
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice, yourArray);
arrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1.setAdapter(arrayAdapter);
arrayAdapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(arrayAdapter2);
spinner1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener(){
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int position, long l) {
//remove the selected item from other adapter
arrayAdapter2.remove(arrayAdapter.getItem(position));
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
同樣可以與其他適配器完成
如果你想刪除特定位置的項目,那麼你可以做象下面這樣:從適配器
object t=m_adapterForSpinner.getitem(pos);//whr m_arrayadapter is array adapter using for filling spinner
然後刪除項類似這樣的
m_adapterForSpinner.remove((CharSequence) t);
然後填寫與適配器再次微調。
現在,如果你想隱藏特定位置的項目,那麼你可以這樣做。
public class CustomAdapter extends ArrayAdapter<String> {
private int hidingItemIndex;
public CustomAdapter(Context context, int textViewResourceId, String[] objects, int hidingItemIndex) {
super(context, textViewResourceId, objects);
this.hidingItemIndex = hidingItemIndex;
}
@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
View v = null;
if (position == hidingItemIndex) {
TextView tv = new TextView(getContext());
tv.setVisibility(View.GONE);
v = tv;
} else {
v = super.getDropDownView(position, null, parent);
}
return v;
}
}
使用如下:
int hidingItemIndex = 0;
CustomAdapter dataAdapter = new CustomAdapter(this, android.R.layout.simple_spinner_item, list, hidingItemIndex);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mySpinner.setAdapter(dataAdapter);
你就必須從適配器 –
刪除位置值,如果你想隱藏日您必須製作自定義適配器,並且必須爲其編寫一些邏輯。 –