如何在android中缩短微调器选择的项目文本?

时间:2015-04-13 06:29:15

标签: android spinner

我使用了android自定义微调器。

我的自定义微调器看起来像波纹管

enter image description here

我的列表数据就像

 List<String> list = new ArrayList<String>();
    list.add("001-00434016457-Md. Mokhhlesur Rahman");
    list.add("001-00434016724-Mohammad Nazim Ullah");
    list.add("001-00434016725-Mohsin Kabir");
    list.add("001-00434016881-Maruf Pervaz Khan");
    list.add("001-00434017171-Md.Nazmul Hasan");

我的微调器适配器和微调器中的设置数据如下所示

Spinner spinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_spinner_item, list);
 dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(dataAdapter);

我的问题是微调器的项目文字很大,如“001-00434016881-Maruf Pervaz”

我想只选择像001-00434016881这样的ID。

我不想获得微调器项目选择的全文。如何从001-00434016881-Maruf Pervaz中删除名称部分,如-Maruf Pervaz Khan,从旋转器中选择项目。

请帮帮我

1 个答案:

答案 0 :(得分:2)

试试这个。如果行项保持与001-00434016881-Md.Some Name

相同的模式
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            Toast.makeText(MainActivity.this, adapter.getItem(position).substring(0,adapter.getItem(position).lastIndexOf("-")), Toast.LENGTH_LONG).show();

        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {
            // TODO Auto-generated method stub

        }
    });