在选择微调器项目中的特定项目后,Edittext想要从禁用启用

时间:2011-02-09 11:25:19

标签: android

我在一个页面中使用Spinner,EditText和Button。微调器有这些项......

下列的程序:

 String[] Items = {
            "Alarm",
            "Office",
            "Meeting",
            "Party",
            "Lunch",
            "Breakfast",
            "Supper",
            "Home",
            "Private",
            "Outdoor",
            "Family",
            "Friends",
            "others"
    };

    Spinner s1;

如果我在微调器项目中选择“其他”,则意味着只需要启用Edittext,否则必须禁用它。如果我选​​择了其他项目,则必须禁用Edittext

代码段:

s1 = (Spinner) findViewById(R.id.spinner);

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
        android.R.layout.simple_spinner_item, Items);

    s1.setAdapter(adapter);
    s1.setOnItemSelectedListener(new OnItemSelectedListener()
    {
        public void onItemSelected(AdapterView<?> arg0, 
        View arg1, int arg2, long arg3) 
        {
            int index = s1.getSelectedItemPosition();
            Toast.makeText(getBaseContext(), 
                "You have selected item : " + Items[index], 
                Toast.LENGTH_SHORT).show();                
        }

        public void onNothingSelected(AdapterView<?> arg0) {}
    });

谢谢,

2 个答案:

答案 0 :(得分:11)

这样做,

    EditText edit = (EditText) findViewById(R.id.EditText01);
    edit.setEnabled(false);
    edit.setInputType(InputType.TYPE_NULL);
    edit.setFocusable(false);

当选择任何其他选项时,

    edit.setEnabled(true);
    edit.setInputType(InputType.TYPE_CLASS_TEXT);
    edit.setFocusable(true);

答案 1 :(得分:0)

我假设您从Spinner获得了值。

使用条件获取值后,通过以下代码设置启用或禁用edittext:

  EditText.setEnabled(BooleanValue);

true是默认值,false设置禁用edittext。