Edittext专注于启动并阻止推送布局

时间:2015-06-13 02:06:37

标签: java android android-layout android-activity

我想关注我的EditText视图,专注于活动启动,所以我有

<activity
    android:name=".TestViewActivity"
    android:windowSoftInputMode="stateVisible|adjustPan"
    android:screenOrientation="portrait"
    android:theme="@android:style/Theme.DeviceDefault.NoActionBar.Fullscreen">
</activity>

这是在Button点击时启动的第二项活动。如果没有EditTextandroid:windowSoftInputMode="stateVisible将无法专注于启动,这就是我为什么会这样做的原因。我的问题是它正在获得焦点,但即使使用TextView,它也会推高上述adjustPan。这是我的活动的整个xml文件

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

<EditText
    android:id="@+id/typeView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true" />

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:id="@+id/wordsView"
    android:text="@string/hello_world"/>

</RelativeLayout>

我希望能够获得焦点并阻止键盘向上推动TextView

1 个答案:

答案 0 :(得分:1)

从Manifest中删除android:windowSoftInputMode =“stateVisible | adjustPan”。

在您的活动的onCreate()中添加以下代码,

EditText myEditText = (EditText) findViewByID(R.id.typeView);
myEditText.requestFocus(); //Gets focus on Edit text.