Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 无法看到编辑文本_Android_Xml_Android Layout_Android Edittext - Fatal编程技术网

Android 无法看到编辑文本

Android 无法看到编辑文本,android,xml,android-layout,android-edittext,Android,Xml,Android Layout,Android Edittext,因此,我试图在textview上放置一个编辑文本,但在实现这一点时遇到了困难。当我打开活动时,键盘会打开,当我键入时,我看不到任何文本输入。此外,当键盘打开时,它会聚焦到我的imageview的一半,而不是我试图放置编辑文本的位置 这是我的xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" and

因此,我试图在
textview
上放置一个编辑文本,但在实现这一点时遇到了困难。当我打开活动时,键盘会打开,当我键入时,我看不到任何文本输入。此外,当键盘打开时,它会聚焦到我的
imageview
的一半,而不是我试图放置编辑文本的位置

这是我的xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_route_details"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.zach.BirdsboroClimbing.RouteDetails">
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/scrollView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <CheckBox
            android:text="Route Climbed"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:id="@+id/routeCheckBox"
            android:gravity="center" />

        <CheckBox
            android:text="Add Note"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_alignParentEnd="true"
            android:id="@+id/noteCheckBox"
            android:gravity="center"
             />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:inputType="text"
            android:text="Name"
            android:layout_centerVertical="true"
            android:layout_centerHorizontal="true"
            android:id="@+id/noteEditText"
            android:layout_below="@id/routeCheckBox"
            android:background="#008000"
            />

        <TextView
            android:text="TextView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/routeDetailsView"
            android:textSize="18sp"
            android:textAlignment="center"
            android:textColor="@android:color/black"
            android:layout_below="@id/noteEditText"/>

        <ImageView
            android:layout_below="@id/routeDetailsView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/routeImage"
            android:scaleType="fitCenter"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:adjustViewBounds="true" />

    </RelativeLayout>
</ScrollView>


谢谢你的帮助

在清单中使用
softInputMode
adjustPan
。这将使操作系统以使光标在键盘上方可见所需的最小数量滚动整个屏幕

    <activity
       android:name=".YourActivity"
       android:windowSoftInputMode="adjustPan">
    </activity>

好的!我发现了问题所在。将可绘制视图设置为imageview时,会出现此问题。 您已经制作了
EditText
layout\u centerVertical=“true”
。 由于父对象是相对的,当imageview中有可绘制的对象时,EditText会重新计算其位置并进入父对象的中心(垂直)。这实际上是在ImageView后面。因此,您的EditText位于ImageView后面,并且由于ImageView是在
xml
中的EditText之后写入的,因此它与EditText重叠


解决方案是从EditText中删除android:layout\u centerVertical=“true”。

将您的xml替换为以下内容

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/scrollView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">


<RelativeLayout
    android:id="@+id/activity_route_details"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
   >


            <CheckBox
                android:text="Route Climbed"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true"
                android:id="@+id/routeCheckBox"
                android:gravity="center" />

            <CheckBox
                android:text="Add Note"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true"
                android:id="@+id/noteCheckBox"
                android:gravity="center"
                />

            <EditText
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:inputType="text"
                android:text="Name"
                android:layout_centerVertical="true"
                android:layout_centerHorizontal="true"
                android:id="@+id/noteEditText"
                android:layout_below="@id/routeCheckBox"
                android:background="#008000"
                />

            <TextView
                android:text="TextView"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/routeDetailsView"
                android:textSize="18sp"
                android:textAlignment="center"
                android:textColor="@android:color/black"
                android:layout_below="@id/noteEditText"/>

            <ImageView
                android:layout_below="@id/routeDetailsView"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/routeImage"
                android:scaleType="fitCenter"
                android:layout_alignParentBottom="true"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true"
                android:adjustViewBounds="true" />

        </RelativeLayout>
    </LinearLayout>
    </ScrollView>

只需删除EditText的填充(如果存在)。它适合我。

所以我把它放在我的清单中,但我看不到我的编辑文本在我的活动中的位置。例如,如果我单击编辑文本应位于的区域,则不会发生任何情况。@zsh5032工作正常,但您的布局不正常,这就是检查我编辑的答案的原因!!好的,谢谢。我现在不在计算机旁,但一旦我能试用它,我会立即报告。@zsh5032你检查过答案了吗?@zsh5032下次使用属性时最好对相同类型的属性有一个基本的了解不要全部使用=D,祝你好运!!你能上传正在发生的事情的截图吗?我现在不在电脑旁,但基本上编辑文本好像不存在。我看不到它,也不能点击它打开键盘。嘿,我也试过你的答案,它也起作用了。我希望我能选择一个以上的正确答案给你帮助!
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/scrollView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">


<RelativeLayout
    android:id="@+id/activity_route_details"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
   >


            <CheckBox
                android:text="Route Climbed"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true"
                android:id="@+id/routeCheckBox"
                android:gravity="center" />

            <CheckBox
                android:text="Add Note"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true"
                android:id="@+id/noteCheckBox"
                android:gravity="center"
                />

            <EditText
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:inputType="text"
                android:text="Name"
                android:layout_centerVertical="true"
                android:layout_centerHorizontal="true"
                android:id="@+id/noteEditText"
                android:layout_below="@id/routeCheckBox"
                android:background="#008000"
                />

            <TextView
                android:text="TextView"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/routeDetailsView"
                android:textSize="18sp"
                android:textAlignment="center"
                android:textColor="@android:color/black"
                android:layout_below="@id/noteEditText"/>

            <ImageView
                android:layout_below="@id/routeDetailsView"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/routeImage"
                android:scaleType="fitCenter"
                android:layout_alignParentBottom="true"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true"
                android:adjustViewBounds="true" />

        </RelativeLayout>
    </LinearLayout>
    </ScrollView>
 this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);