[英]Android layout, setting buttons to have the same size
我是eclipse中編寫android應用程序的新手。
話雖如此,我基於互聯網上的代碼,並為我的布局提出了這個xml文件。 我不能讓四個按鈕具有相同的大小 ,當我玩其他部分,進度條和它下面的文本時,它們會變成香蕉,在屏幕上顯示。
有人可以審查代碼並告訴我什么是鑼? 我根本就不明白。 這是一張照片。
<?xml version="1.0" encoding="UTF-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tableLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TableRow
android:id="@+id/tableRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:paddingTop="10dp" >
<TextView
android:id="@+id/txt_currentDate"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_span="6"
android:gravity="center"
android:text="Current Date"
android:textSize="18dp"
android:textStyle="bold"
android:typeface="serif" >
</TextView>
</TableRow>
<TableRow
android:id="@+id/progressBarRow"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:paddingTop="5dp" >
<ProgressBar
android:id="@+id/DailyCalorieProgress"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_span="3"
android:progress="80" />
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:paddingTop="5dp" >
<TextView
android:id="@+id/textView1"
android:gravity="center"
android:text="Calorie Limit : "
android:textStyle="bold" >
</TextView>
<TextView
android:id="@+id/textView2"
android:gravity="center"
android:text="2000 " >
</TextView>
<TextView
android:id="@+id/textView3"
android:gravity="center"
android:text="Calories Left : "
android:textStyle="bold" >
</TextView>
<TextView
android:id="@+id/textView4"
android:gravity="center"
android:text="552" >
</TextView>
</TableRow>
<TextView
android:id="@+id/textView5"
android:gravity="center_horizontal"
android:text="____________________" >
</TextView>
<TableLayout
android:id="@+id/ButtonLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5dp"
android:stretchColumns="0,1" >
<TableRow
android:id="@+id/buttonRow1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:orientation="horizontal"
android:paddingTop="10dp" >
<Button
android:id="@+id/btn_addFood"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:padding="5dp"
android:text="Add Food"/>
<Button
android:id="@+id/btn_addExercise"
android:layout_width="130dp"
android:layout_height="fill_parent"
android:layout_weight="1"
android:padding="5dp"
android:text="Add Exercise"/>
</TableRow>
<TableRow
android:id="@+id/buttonRow2"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<Button
android:id="@+id/btn_recWeight"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5dp"
android:text="Record Weight" />
<Button
android:id="@+id/btn_sgstMeal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5dp"
android:text="Suggest Meal/Exercise" />
</TableRow>
</TableLayout>
</TableLayout>
編輯:
它現在幾乎可以工作。
<?xml version="1.0" encoding="UTF-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tableLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TableRow
android:id="@+id/tableRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:paddingTop="10dp" >
<TextView
android:id="@+id/txt_currentDate"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_span="6"
android:gravity="center"
android:text="@string/CurrentDate"
android:textSize="18dp"
android:textStyle="bold"
android:typeface="serif" >
</TextView>
</TableRow>
<TableRow
android:id="@+id/progressBarRow"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:paddingTop="5dp" >
<ProgressBar
android:id="@+id/DailyCalorieProgress"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_span="3"
android:progress="80" />
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:paddingTop="5dp" >
<TextView
android:id="@+id/textView1"
android:gravity="center"
android:text="@string/CalorieLimit"
android:textStyle="bold" >
</TextView>
<TextView
android:id="@+id/textView2"
android:gravity="center"
android:text="@string/CalorieLimitData" >
</TextView>
<TextView
android:id="@+id/textView3"
android:gravity="center"
android:text="@string/CaloriesLeft"
android:textStyle="bold" >
</TextView>
<TextView
android:id="@+id/textView4"
android:gravity="center"
android:text="@string/CaloriesLeftData" >
</TextView>
</TableRow>
<TextView
android:id="@+id/textView5"
android:gravity="center_horizontal"
android:text="@string/Line" >
</TextView>
<TableRow
android:id="@+id/buttonRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="horizontal"
android:paddingTop="10dp" >
<Button
android:id="@+id/btn_addFood"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:padding="5dp"
android:text="@string/AddFood"/>
<Button
android:id="@+id/btn_addExercise"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:padding="5dp"
android:text="@string/AddExercise"/>
</TableRow>
<TableRow
android:id="@+id/buttonRow2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="horizontal"
android:paddingTop="10dp" >
<Button
android:id="@+id/btn_recWeight"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:padding="5dp"
android:text="@string/RecordWeight" />
<Button
android:id="@+id/btn_sgstMeal"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:padding="5dp"
android:text="@string/SuggestedMeal_Exercise" />
</TableRow>
</TableLayout>
你的布局不是真正“高效”。 但無論如何..要解決您的問題,您必須將TableRow(包含您的按鈕的那些)設置為
android:layout_width="fill_parent"
android:layout_height="wrap_content"
和你的所有按鈕
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
0dip什么都沒做。 但由於權重param android無論如何都要測量實際大小,所以你不需要提供“相關”值
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.