我是Android新手,我设法完成了我的应用。我应该将iOS应用程序转换为Android应用程序,因此开发了WS。我即将完成应用程序,但仍有两个问题。我无法为最后两个制作相同的布局。两个第一个图像是iOS,最后一个是Android。我不了解像AutoLayout for iOS这样的RelativeLayout的规则,我如何让每个屏幕上的主页看起来都很棒(也就是说,每个按钮的大小合适且组织良好)。目前,我设法使前3个图像按钮正常,但在更大的屏幕上,这些按钮的大小完全不适合屏幕,怎么样?
提前多多感谢!
imageHomeiOS http://img15.hostingpics.net/pics/781886CapturedcranduSimulateuriOS3juil2014210948.png imageProfileiOS http://img15.hostingpics.net/pics/583953CapturedcranduSimulateuriOS3juil2014211025.png imageHomeAnd http://img15.hostingpics.net/pics/695608Capturedcran20140722190415.png imageProfileAnd http://img15.hostingpics.net/pics/313733Capturedcran20140722190428.png
答案 0 :(得分:0)
尝试使用加权布局而不是RelativeLayout。你可以定义一个水平线性布局,使weightSum = 3,然后给每个按钮一个layout_weight = 1.重量和基本上将屏幕分成很多部分,无论屏幕大小如何,并给出每个部分的一部分对你赋予权重的元素。确保在定义各个元素的layout_width时,将其定义为0dp。 layout_width标签将不再设置元素的宽度,它将由占用的权重设置。
答案 1 :(得分:0)
我不确定性能,因为我得到了lint:嵌套的重量对性能不利。 但是试试,我认为对于7个按钮它不会影响性能。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:orientation="horizontal">
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/icon"
android:adjustViewBounds="true" />
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/icon"
android:adjustViewBounds="true" />
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/icon"
android:adjustViewBounds="true" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:orientation="horizontal">
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/icon"
android:adjustViewBounds="true" />
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/icon"
android:adjustViewBounds="true" />
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/icon"
android:adjustViewBounds="true" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:orientation="horizontal">
<View
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent" />
<ImageButton
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/icon"
android:adjustViewBounds="true" />
<View
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent" />
</LinearLayout>
</LinearLayout>