我有一个带有自定义ImageView和两个TextEdits的布局;一个在上面,一个在下面。为了使它适合多个屏幕,我用ScrollView包围了整个事物。
但是,当添加ScrollView时,顶部TextEdit和ImageView以及ImageView和底部TextEdit之间会出现一个巨大的间隙(大约是屏幕的高度)。
我只是覆盖了ImageView中的onDraw()
方法(并且仍然从那里调用super.onDraw()
)
这是我的布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<EditText
android:id="@+id/top_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="@string/top_hint" >
<requestFocus />
</EditText>
<com.javanut13.gememerator.MImageView
android:id="@+id/image_viewer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="0dp"
android:src="@drawable/ic_action_search" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<EditText
android:id="@+id/bottom_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:layout_weight="3"
android:hint="@string/bottom_hint" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/button_text" />
</LinearLayout>
</LinearLayout>
答案 0 :(得分:3)
好吧,事实证明我的ImageView在缩放图像时没有调整其高度,因此它会保持原始图像的高度(来自我的相机;大约2000像素高)因此有一个它上面和下面的巨大空间。
我遇到了这个问题:( Image do not resize with ImageView)说要将android:adjustViewBounds="true"
添加到ImageView,以解决问题。