我有一个简单的垂直布局,下面有一个editText和一个ImageView 问题是,当用户编辑EditText并且它太长时,它下面的ImageView最终被“压碎”并调整大小以避免屏幕滚动,如下所示:
当我想要相反时,保留图像大小并在屏幕滚动溢出时允许屏幕滚动。
通过在线搜索,我认为我必须更改scaleType
和adjustViewBounds
参数,但我没有运气玩它们。
奇怪的是,即使手动设置高minHeight
似乎也无法解决问题
有什么建议吗?
编辑:xml添加:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/editText"
android:layout_gravity="left|center_vertical"
android:hint="Nothing here. Type your thoughts?"
android:background="?attr/background_card"
android:layout_margin="8dp"
android:padding="16dp"/>
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/imageView" android:layout_gravity="center_horizontal" android:paddingLeft="14dp"
android:paddingRight="14dp"
android:scaleType="center"
android:adjustViewBounds="false"/>
</LinearLayout>
答案 0 :(得分:0)
来自:http://developer.android.com/guide/topics/ui/layout/linear.html
LinearLayout还支持为各个孩子分配权重 使用android:layout_weight属性。此属性指定一个 对于视图的“重要性”价值应该是多少空间 占据屏幕上。较大的重量值允许它扩展到 填充父视图中的任何剩余空间。子视图可以指定一个 权重值,然后视图组中的任何剩余空间 按照宣称的体重比例分配给儿童。 默认权重为零。
例如,如果有三个文本字段,其中两个声明了一个 重量为1,而另一个没有给予重量,第三个文字字段 没有重量不会增长,只会占据所需的面积 它的内容。另外两个将同等扩展以填补空间 测量完三个场后剩下的。如果第三个字段是 然后给出2的权重(而不是0),那么它现在被宣布更多 比其他人都重要,所以它剩下的一半 空间,而前两个平均分享其余部分。
理论上我认为它应该可以解决你的问题。