在Android中,我正在努力实现这一目标:
基本上,能够使用EditText并排添加按钮,它们都占据顶行宽度的90%。 (我不关心像twitter图标这样的徽标。)
我尝试过使用layout_weight的LinearLayout,但它们根本没有正确显示:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum = "1.0"
android:orientation="vertical"
android:background = "#faadadad" >
<EditText
android:layout_width="0dip"
android:layout_height="0dip"
android:layout_weight = "0.8"
android:layout_marginLeft = "2dip"
android:layout_marginTop = "1dip"
android:layout_marginBottom = "1dip"
android:hint="Search Terms" />
<Button android:text = "?"
android:layout_width = "0dip"
android:layout_height="2dip" android:layout_weight = "0.2"/>
</LinearLayout>
我在RelativeLayout中尝试的任何东西都看起来不对(我尝试将2元素之间的边距设置为0dips,没有运气。而且我也无法获得90%的宽度要求。)
我做错了什么?提前谢谢。
答案 0 :(得分:2)
尝试使用以下内容:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum = "1.0"
android:orientation="horizontal"
android:background = "#faadadad" >
<LinearLayout android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.8">
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft = "2dip"
android:layout_marginTop = "1dip"
android:layout_marginBottom = "1dip"
android:hint="Search Terms" />
</LinearLayout>
<Button android:text = "?"
android:layout_width = "0dip"
android:layout_height="wrap_content"
android:layout_weight = "0.2"/>
</LinearLayout>
所以基本上,当你使用水平LinearLayout时,layout_weight会水平工作,即根据layout_weight参数(layout_width =“0dp”)划分宽度。如果使用垂直LinearLayout,则layout_weight垂直工作,即根据layout_weight参数(layout_height =“0dp”)垂直划分高度。
希望它对你有所帮助。