按钮如何获得焦点?

时间:2012-03-17 12:46:37

标签: android button

有很多帖子涉及这个主题。我想我应该问这个简单的问题,希望澄清一下。

我无法将焦点设置在按钮上。我知道我可能会错过一些基本的东西这是简单的布局:

<?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical" >

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Button"
    android:focusable="true" />

 </LinearLayout>

以下是onCreate()中的简单代码:

        Button button = (Button)findViewById(R.id.button1);
        button.setFocusable(true);
        button.requestFocus();
        button.setText("Debug");  //Just to show the code here has been executed

它根本不起作用(即按钮没有得到焦点)。

对我的错误或误解的任何更正将不胜感激。

1 个答案:

答案 0 :(得分:38)

更新您的代码:

        Button button = (Button)findViewById(R.id.button1);
        button.setFocusable(true);
        button.setFocusableInTouchMode(true);///add this line
        button.requestFocus();
        button.setText("Debug");