简体   繁体   English

启用禁用的edittext android

[英]Enable a disabled edittext android

I have an edittext and a spinner with two items (" " and "1"). 我有一个edittext和一个带有两个项目的微调器(“和” 1)。 I disabled my edittext. 我禁用了编辑文本。 Now what I want to do is enable my edittext when I select 1 in my spinner. 现在,我想做的就是在微调器中选择1时启用我的edittext。 But it's not enabling. 但这并没有启用。

public void onCreate(Bundle savedInstanceState) {
.......
                enable();
}

public void enable() {

        Spinner spinner1 = (Spinner) findViewById(R.id.spinner1);
        spinner1.setAdapter(ArrayAdapter.createFromResource(this, R.array.spinner1, android.R.layout.test_list_item));
        EditText edit1 = (EditText) findViewById(R.id.edit1);
        String s1 = spinner1.getSelectedItem().toString();

        edit1.setEnabled(false);

        if (s1.equals("1")) {
            edit1.setEnabled(true);
            edit1.setFocusable(true);
            edit1.setFocusableInTouchMode(true);
        }
}

you should create on change item listener and set it to your spinner. 您应该在更改项侦听器上创建并将其设置为微调器。 This where you should post the code for enabling the edittext 您应该在此处发布用于启用edittext的代码

与微调器进行交互后,可使用微调器的onclick侦听器“监听”,获取微调器在onclick内的值,并根据需要操作其他对象。

Extent OnItemSelectedListener of Spinner class and on Spinner类的范围OnItemSelectedListener以及

public void onItemSelected(AdapterView<?> parent, View view, 
        int pos, long id) {
    // An item was selected. You can retrieve the selected item using
    // parent.getItemAtPosition(pos)
}

Take the action of enabling and disabling the edit text. 执行启用和禁用编辑文本的操作。

You must implement the method onItemSelected : 您必须实现onItemSelected方法:

Callback method to be invoked when an item in this view has been selected. 在此视图中选择一个项目时要调用的回调方法。 This callback is invoked only when the newly selected position is different from the previously selected position or if there was no selected item. 仅当新选择的位置与先前选择的位置不同或没有选择的项目时,才调用此回调。

public abstract void onItemSelected (AdapterView<?> parent, View view, int position, long id) {
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM