我有几个textview,有几个微调器排列在桌子上。微调器中有4个选择,所有选择都相同,第一个选择是“-”。当选择默认选项“-”时,我希望微调框旁边的textview为红色,否则为白色。

我对此进行了编码以解决此问题,但是当您选择一个微调器的其他选项时,所有textview都会更改。它的行为确实很奇怪。

    public void onItemSelected(AdapterView<?> parent,
        View view, int pos, long id) {
        switch(parent.getId()) {
        case R.id.spinner1:
            if(parent.getItemAtPosition(pos).toString().equals("--")){textView1.setTextColor(Color.RED);}else{textView1.setTextColor(Color.WHITE);}
        case R.id.spinner2:
            if(parent.getItemAtPosition(pos).toString().equals("--")){textView2.setTextColor(Color.RED);}else{textView2.setTextColor(Color.WHITE);}
        case R.id.spinner3:
            if(parent.getItemAtPosition(pos).toString().equals("--")){textView3.setTextColor(Color.RED);}else{textView3.setTextColor(Color.WHITE);}

        }
    }

最佳答案

您已经忘记了案例块中的“中断”:

case R.id.spinner1:
    if(parent.getItemAtPosition(pos).toString().equals("--")){
        textView1.setTextColor(Color.RED);
    } else {
        textView1.setTextColor(Color.WHITE);
    }
    break;


等等。

关于java - 如何在微调框选择上更改文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8926823/

10-12 05:51