Spinner onItemSelected(?????)

时间:2012-12-06 22:32:46

标签: android if-statement spinner

第一个微调器是好的,第二个微调器是ArrayList,ArrayAdapter<>并且它加载了一个文件名文件夹,所以,我想知道如何使用if()之类的文件名包含,或者列表项包含,因为每个文件都以62或31开头。

     public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
        long arg3)
{
    switch(arg0.getId())
    {
    case R.id.spinner:
    {
    if(arg2 == 0)
    {
        break;
    }
    if(arg2 == 1)
    {
        Intent myIntent = new Intent(Inspector.this, hord.class);
        Inspector.this.startActivity(myIntent);
        break;
    }
    if(arg2 == 2)
    {
        Intent myIntent = new Intent(Inspector.this, hord.class);
        Inspector.this.startActivity(myIntent);
        break;
    }
    }
    case R.id.recent:
    {
        if(arg1.getContentDescription().toString().contains("62"))//what im trying to do
        {
            deviation.setText("jobwelldone");
        }

    }
    }

    // TODO Auto-generated method stub

}

1 个答案:

答案 0 :(得分:2)

在String数组中保存文件名后,您可以使用for循环遍历数组并使用

indexOf() 

在调用String对象中搜索传递给它的String的方法。例如:

( if filename.indexOf(String.valueOf(62)) == -1 ) 

//表示文件名String不包含'62'subtrng,因为indefOf()方法返回-1。否则filename String包含'62'子串。

从微调器获取项目:

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
        Object item = parent.getItemAtPosition(position);
    }
    public void onNothingSelected(AdapterView<?> parent) {
    }
});

或使用:

String spinnerValue = mySpinner.getSelectedItem().toString();