0

私はかなりの調査を行いましたが、これは非常に奇妙であるため、この質問を投稿せざるを得ません。1行のEditTextの上のScrollViewの上にカスタムビューを持つ垂直LinearLayoutがあります。カスタム ビューの高さは 10 dp に固定されており、EditText の高さは wrap_content であるため、ヒントの高さになります。ScrollView の重みは 1 であるため、2 つの間のすべてのスペースを占める必要があります。このコードはhttps://stackoverflow.com/a/7998024/852795をモデルにしています。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

    <com.program.main.StatsBar
    android:id="@+id/mvStatsBar"
    android:layout_width="match_parent"
    android:layout_height="10dp" />     

    <ScrollView
    android:id="@+id/tvScrollMessage"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:scrollbars="vertical"
    android:fillViewport="true" >           
    <TextView
        android:id="@+id/tvMessage"
        android:textIsSelectable="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:gravity="left"
        android:textSize="14sp" />
    </ScrollView>

    <EditText android:id="@+id/command_entry"
    android:background="@drawable/command_bar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:lines="1"
    android:singleLine="true"
    android:textSize="16sp"
    android:hint="@string/command_entry" />

</LinearLayout>

特に奇妙なのは、私の携帯電話 (Android v2.3.4) で完全に動作することです。ScrollView はテキストでいっぱいになり、EditText の上でスクロールします。ただし、私の v4.3 タブレットでは、ScrollView が EditText の下にオーバーラップしているため、ScrollView の最後の行は常に EditText によって半分隠されています。ここで何が起こっているのかについてのアイデアはありますか?

4

1 に答える 1

1

私は問題を再現しました。Android 2.3 では表示されませんが、4.0 では表示されるこのテキストビューにランダムに 10 dp のマージンを設定したようです。

<TextView
        android:id="@+id/tvMessage"
        android:textIsSelectable="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:gravity="left"
        android:textSize="14sp" />
于 2013-08-30T19:41:24.640 に答える