在我的应用程序中,我有3个按钮,一个listView和一个带图像的editText。 我的问题是,当我在editText中编辑任务时,editText的大小会大大减少。这个问题只发生在移动设备上。请帮我。 这是我的布局文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="10" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:orientation="horizontal"
android:weightSum="30" >
<Button
android:id="@+id/todaytaskbtnid"
style="?android:attr/buttonStyleSmall"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="10"
android:background="@drawable/buttonselector"
android:gravity="center"
android:text="TODAY" />
<Button
android:id="@+id/tomorrowtaskbtnid"
style="?android:attr/buttonStyleSmall"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="10"
android:background="@drawable/buttonselector"
android:text="TOMORROW" />
<Button
android:id="@+id/futuretaskbtnid"
style="?android:attr/buttonStyleSmall"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="10"
android:background="@drawable/buttonselector"
android:text="FUTURE" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="8" >
<ListView
android:id="@+id/frontpagetasklistid"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</ListView>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:orientation="horizontal" >
<EditText
android:id="@+id/edittextidAddTodayTask"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/edittextselector"
android:drawableRight="@drawable/addtask"
android:hint="Add Today Task"
android:lines="3"
android:maxLines="5"
android:minLines="1" />
</LinearLayout>
</LinearLayout>
手机拍摄:
答案 0 :(得分:2)
我相信你不应该在这个场景中使用布局权重,或者你已经混合了它们。 您可以保留线性布局和行的权重,但由于您希望编辑文本显示在屏幕的底部,我要做的是将所有内容包装在RelativeLayout中,然后绘制编辑文本并将其对齐到父级的底部,然后将线性布局对齐到编辑文本上方。
尝试这种布局(当然,不要忘记将drawables更改为drawables,因为我删除了其中一些):
<?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/edittextidAddTodayTask"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:drawableRight="@drawable/addtask"
android:hint="Add Today Task"
android:lines="3"
android:maxLines="5"
android:minLines="1" />
<LinearLayout
android:id="@+id/topButtons"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentTop="true"
android:weightSum="30" >
<Button
android:id="@+id/todaytaskbtnid"
style="?android:attr/buttonStyleSmall"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="10"
android:gravity="center"
android:text="TODAY" />
<Button
android:id="@+id/tomorrowtaskbtnid"
style="?android:attr/buttonStyleSmall"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="10"
android:text="TOMORROW" />
<Button
android:id="@+id/futuretaskbtnid"
style="?android:attr/buttonStyleSmall"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="10"
android:text="FUTURE" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_above="@id/edittextidAddTodayTask"
android:layout_below="@id/topButtons"
>
<ListView
android:id="@+id/frontpagetasklistid"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</ListView>
</LinearLayout>
</RelativeLayout>
答案 1 :(得分:0)
尝试给予EditText的android:layout_height="0dp"
答案 2 :(得分:0)
如何在增加编辑文本线性布局的权重的同时减少列表视图的权重?这将增强编辑文本的大小。我不认为编辑文本的xml代码需要任何权重,因为它填充了父布局。 / p>
答案 3 :(得分:-1)
您需要确保AndroidManifest.xml中的<activity>
标记没有这样的configChanges属性:
android:configChanges="keyboard|keyboardHidden|orientation"
当显示键盘或方向发生变化时,这将重绘活动。 http://developer.android.com/guide/topics/manifest/activity-element.html#config