EditText上的软键盘

时间:2012-07-27 11:50:08

标签: android android-layout

这是我的布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:text="Introduzca codigo de comercial"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="400dp"
    android:layout_height="190dp"
    android:layout_above="@+id/textView1"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="60dp"
    android:src="@drawable/logo" />

<EditText
    android:id="@+id/textocontrasena"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_below="@+id/textView1"
    android:layout_marginTop="30dp"
    android:ems="5" >
</EditText>

<Button
    android:id="@+id/loginlogin"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_below="@+id/textocontrasena"
    android:layout_marginTop="20dp"
    android:background="@drawable/xmlbotonzarko"
    android:text="Login"
    android:textColor="#FFF"
    android:textSize="19sp"
    android:textStyle="bold" />

我的问题是,当我进入活动时,软键盘会自动打开。 我想要的是当用户点击EditText(而不是之前)时打开的软键盘。

谢谢!

3 个答案:

答案 0 :(得分:2)

通过添加以下任一项,修改与此布局相关联的Activity中的Android Manifest代码:

android:configChanges="keyboardHidden|orientation"

,或者

android:windowSoftInputMode="stateHidden"

这样看起来像是:

<activity
    android:name="my.package.name.MyActivity"
    android:label="MyActivity"
    android:configChanges="keyboardHidden|orientation"  <!-- Pick one of -->
    android:windowSoftInputMode="stateHidden" />        <!-- these two   -->

这可以防止软键盘在活动开始时自动打开。

答案 1 :(得分:1)

将其放入活动的清单中:android:windowSoftInputMode="stateHidden"

答案 2 :(得分:0)

将焦点放在另一个视图上,并尝试将其添加到TextEdit视图中android:focusable="true" android:focusableInTouchMode="true"

示例更改焦点:((yourView)findViewById(R.id.your_id))。requestFocus();