我有4项在我的应用程序的开始屏幕,看起来像下面这样: 规模布局项目
什么是重要的是我有: - 所有项目都具有相同的宽度(不涉及多少文本实际上) - 看起来相同的所有设备(小屏幕,mdpi,大屏幕等)
我只是想知道是否有关于这个问题的简单解决方案?
我试过使用3 LinearLayouts,但那真的很尴尬.. (1呈现布局根[vertical]和两个每个包含2个按钮[horizonal])。 使这个布局准备好多个屏幕将需要大量的固定宽度和固定边缘黑客行为。就像“xlarge上的按钮边距= 30dp,20个大,15个正常......”。
我的布局XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/background"
android:id="@+id/main_root"
android:orientation="vertical"
android:gravity="center" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_gravity="center" >
<Button
android:id="@+id/btn_learn"
android:text="@string/mainBtn_learn"
style="@style/mainBtn"
android:onClick="handleBtnClick"
android:layout_margin="20dip" />
<Button
android:id="@+id/btn_quiz"
android:text="@string/mainBtn_quiz"
style="@style/mainBtn"
android:onClick="handleBtnClick"
android:layout_margin="20dip" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_gravity="center" >
<Button
android:id="@+id/btn_search"
android:text="@string/mainBtn_search"
style="@style/mainBtn"
android:onClick="handleBtnClick"
android:layout_margin="20dip" />
<Button
android:id="@+id/btn_more"
android:text="@string/mainBtn_more"
style="@style/mainBtn"
android:onClick="handleBtnClick"
android:layout_margin="20dip" />
</LinearLayout>
是否有一个视图,其“自动秤”这些按钮或静止任何其他简单的解决方案?
编辑:
所以,在特殊的,你需要像 按钮:
android:layout_width="15%" // 15% of screen width/height depending on the orientation
android:layout_marginBottom="10%" // see above
为什么给孩子一个0dp的layout_width而不是fill_parent/match_parent? – poitroae
正如我所说,我对Android开发非常陌生。我正在尝试一些事情来使布局看起来很正确。我不知道我是否在某个地方读过这本书,或者我碰巧试过它。我只是改变了fill_parent,我仍然得到了预期的结果。 –
好的,谢谢!我用重量解决了它,效果非常好! :) – poitroae