我正在尝试在网格视图中放置12个按钮。这是我的布局XML
文件。
我怎样才能使用RelativeLayout
来实现这一目标?我是Android编程的新手。
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/bAries"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Aries"
android:drawableTop="@drawable/aries" />
<Button
android:id="@+id/bTauras"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tauras"
android:drawableTop="@drawable/tauras" />
<Button
android:id="@+id/bGemini"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Gemini"
android:drawableTop="@drawable/gemini" />
答案 0 :(得分:4)
根据你的问题,我认为以下是你的要求,希望它们符合你真正需要的东西:
RelativeLayout
? 注意:强>
对于这样一个简单的事情,尤其是你知道你只需要有一定数量的元素(12个按钮)并且这个数字是静态的,你真的不需要使用像GridView
那样的复杂布局,其中您必须实现ListAdapter
以提供动态添加按钮。因此,您所提出的最简单的解决方案就是如您所提出的那样,使用RelaiveLayout
,如我所提供的那样。
我尝试过以下内容:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.androxp.randika.main.MainActivity"
tools:showIn="@layout/activity_main">
<Button
android:id="@+id/bAquarius"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:layout_marginLeft="5dp"
android:text="Aquarius"/>
<Button
android:id="@+id/bPisces"
android:layout_toRightOf="@+id/bAquarius"
android:layout_height="wrap_content"
android:layout_width="115dp"
android:layout_marginLeft="5dp"
android:layout_marginRight=""
android:text="Pisces"/>
<Button
android:id="@+id/bAries"
android:layout_toRightOf="@+id/bPisces"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:layout_marginRight="5dp"
android:text="Aries"/>
<Button
android:id="@+id/bTaurs"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:text="Taurs"
android:layout_below="@+id/bAquarius"
android:layout_alignLeft="@+id/bAquarius"
android:layout_alignStart="@+id/bAquarius" />
<Button
android:id="@+id/bGemini"
android:layout_height="wrap_content"
android:layout_width="115dp"
android:text="Gemini"
android:layout_alignTop="@+id/bTaurs"
android:layout_alignRight="@+id/bPisces"
android:layout_alignEnd="@+id/bPisces" />
<Button
android:id="@+id/bCancer"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:text="Cancer"
android:layout_below="@+id/bAries"
android:layout_alignRight="@+id/bAries"
android:layout_alignEnd="@+id/bAries" />
<Button
android:id="@+id/bLeo"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:text="Leo"
android:layout_below="@+id/bTaurs"
android:layout_alignLeft="@+id/bTaurs"
android:layout_alignStart="@+id/bTaurs"/>
<Button
android:id="@+id/bVirgo"
android:layout_height="wrap_content"
android:layout_width="115dp"
android:text="Virgo"
android:layout_alignTop="@+id/bLeo"
android:layout_alignLeft="@+id/bGemini"
android:layout_alignStart="@+id/bGemini" />
<Button
android:id="@+id/bLibra"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:text="Libra"
android:layout_below="@+id/bCancer"
android:layout_alignRight="@+id/bCancer"
android:layout_alignEnd="@+id/bCancer"/>
<Button
android:id="@+id/bScorpio"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:text="Scorpio"
android:layout_below="@+id/bLeo"
android:layout_alignLeft="@+id/bLeo"
android:layout_alignStart="@+id/bLeo" />
<Button
android:id="@+id/bSagittarius"
android:layout_height="wrap_content"
android:layout_width="115dp"
android:text="Sagittarius"
android:layout_below="@+id/bVirgo"
android:layout_toLeftOf="@+id/bAries"
android:layout_toStartOf="@+id/bAries" />
<Button
android:id="@+id/bCapricorn"
android:layout_height="wrap_content"
android:layout_width="110dp"
android:text="Capricorn"
android:layout_below="@+id/bLibra"
android:layout_alignRight="@+id/bLibra"
android:layout_alignEnd="@+id/bLibra"/>
</RelativeLayout>
希望这可能会有所帮助。
<强>线索:强>
但是,我使用Android Studio创建了这个。如果您使用的是Eclipse,我建议您开始使用Android Studio,因为您刚开始使用Android App Development。
对于Android RelativeLayouts
,请阅读以下参考文献:
你可以通过一次谷歌搜索找到大量的教程。
建议之词:
无论您学习Android开发,都要尝试使用最新的材料。
最诚挚的问候,
Randika
答案 1 :(得分:0)
您应该使用GridView类。 Here's官方文件和样本