如何启用按钮取决于API 7中的edittext

时间:2014-10-27 16:09:13

标签: android button android-edittext

我需要setEnabled按钮,当edittext不为空但项目在API 7中时..必须为低安卓程序执行此操作: - /我试过这样:

edittxt.setOnFocusChangeListener(new View.OnFocusChangeListener() {
            @Override
            public void onFocusChange(View view, boolean b) {
            if (!b) {
                if (!edittxt.getText().toString().trim().equals("")) {
                  btn1.setEnabled(true);
                }
            }
            }
        });

应用不起作用。在API 7中,setEnabled()方法不可用..有什么方法可以制作它? THX。

2 个答案:

答案 0 :(得分:1)

在将OnFocusChangeListener添加到EditText之前,似乎没有将按钮添加到布局或不调用findViewById。您应该将按钮添加到布局

 <Button
    android:id="@+id/button"
    android:text="Click me"
    android:layout_width="match_parent"
    android:layout_height="50dp"/>

然后像这样调用findViewById:

Button btn1 = (Button) findViewById(R.id.button);
EditText edittxt = (EditText) findViewById(R.id.your_edit_text_id);
edittxt.setOnFocusChangeListener(new View.OnFocusChangeListener() {
        @Override
        public void onFocusChange(View view, boolean b) {
        if (!b) {
            if (!edittxt.getText().toString().trim().equals("")) {
              btn1.setEnabled(true);
            }
        }
        }
    });

答案 1 :(得分:0)

在我的活动中:

Button btn1;
EditText edittxt;

在我的onCreate方法中:

btn1= (Button)findViewById(R.id.button1);

        edittxt.setOnFocusChangeListener(new View.OnFocusChangeListener() {
            @Override
            public void onFocusChange(View view, boolean b) {
            if (!b) {
                if (!edittxt.getText().toString().trim().equals("")) {
                  btn1.setEnabled(true);
                }
            }
            }
        });

在我的布局中:

<Button
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Zastav a ulož"
        android:id="@+id/button1"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:enabled="false" />

按钮类型正常..按钮功能在启用= false之前工作,因此findviewbyid正常。我真的不知道问题在哪里: - )