在edittext中获得焦点

时间:2013-09-06 05:05:20

标签: android layout

我有一个如下所示的编辑文本。问题是我的编辑文本没有闪烁的光标。我怎么能得到这个?具体来说,我想要的是当用户点击我的编辑文本一次,键盘应该出现。知道我怎么能这样做吗?

<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:ems="10"
    android:focusable="true"
    android:inputType="textMultiLine"
    android:maxLines="1" >
</EditText>

5 个答案:

答案 0 :(得分:0)

您可以使用以下代码进行增益聚焦。

EditText editText1=(EditText) findViewById(R.id.editText1);
editText1.requestFocus();
editText1.setFocusableInTouchMode(true);

答案 1 :(得分:0)

自定义闪烁光标会在EditText获得焦点时自动显示,我认为如果还有别的东西在焦点上,那么你的EditText就无法获得它。

答案 2 :(得分:0)

使用<requestFocus />android:focusableInTouchMode="true"

  <EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:ems="10"
    android:focusable="true"
    android:focusableInTouchMode="true"
    android:inputType="textMultiLine"
    android:maxLines="1" >

    <requestFocus />
</EditText>

答案 3 :(得分:0)

只需致电EditText.setOnFocusChangeListener()并覆盖听众的onFocusChange

editText.setOnFocusChangeListener(new OnFocusChangeListener() {

        @Override
        public void onFocusChange(View v, boolean hasFocus) {
            if (hasFocus) {
                // come up with the keyboard.
            }

        }
    });

如果您希望EditText获得焦点,请致电requestFocus()

答案 4 :(得分:0)

隐式打开键盘。使用这个

// for showing the soft keyboard on click of edit text
    InputMethodManager mgr = (InputMethodManager) getSystemService   (Context.INPUT_METHOD_SERVICE);
    // only will trigger it if no physical keyboard is open
    mgr.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);

并且可以看到光标,只需在xml中添加它。

android:cursorVisible="true"

祝你好运!..