如何在android中创建无焦点,启用编辑文本框

时间:2011-05-27 07:46:26

标签: android

我创建了一个searchEditBox和一个按钮。最初当页面加载时,searchEditBox将自动聚焦橙色标记。当我使用searchValue.setFocusable(false);.,它没有聚焦但我无法在那个盒子上输入任何东西(Box将被禁用)。我怎样才能恢复这个probs。?

的java:

的setContentView(R.layout.main);         编辑=(的EditText)findViewById(R.id.edit);         但是=(按钮)findViewById(R.id.but);         edit.setFocusable(假);

XML:     

2 个答案:

答案 0 :(得分:1)

希望这可以解决您的问题。将android:focusableInTouchMode =“true”添加到在您的mail.xml文件中保存EditText的linearLayout。

即:

<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/linearLayout"
android:focusableInTouchMode="true">

这对我有用。非常简单的解决方案。

答案 1 :(得分:0)

评论您的edit.setFocusable(false);

使用searchValue.requestFocus()将焦点设置在EditText上。它会对你有用。

检查以下代码。

活动

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.admob);

         // Lookup R.layout.main
       EditText edit = (EditText) findViewById(R.id.edit);

       Button but=(Button)findViewById(R.id.but);
//       edit.setFocusable(false);
       edit.requestFocus();
    }

admob.xml

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

<EditText android:id="@+id/edit"
        android:layout_width="250px" 
        android:layout_height="wrap_content" 
       />
        <Button android:id="@+id/but"
         android:layout_width="80px"
         android:layout_height="wrap_content"
         android:text="click"/>
</LinearLayout>

如果我的回复对您有帮助,不要忘记投票。

由于 迪帕克