2016-08-20 64 views
0

我在Android总线预订应用工作的相互选择,以及我不得不做出这样的具有相同的值例如两个微调城市名称。一个微调是选择你的来源城市,第二个微调是为目的地城市。2个相同值纺纱如何依赖于一个离心器隐藏在第二微调该值

帮助我如何管理像第一微调选择一个项目(城市名)这两个微调器隐藏在第二微调该项目。

+0

你就必须从适配器 –

+0

删除位置值,如果你想隐藏日您必须制作自定义适配器,并且必须为其编写一些逻辑。 –

回答

0

这是我做我的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) { 

    } 
}); 

同样可以与其他适配器完成

0

如果你想删除特定位置的项目,那么你可以做象下面这样:从适配器

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); 
相关问题