我在5英寸的智能手機上開發了我的應用程序,現在我遇到了較小屏幕的問題。我在HTC Wildfire上測試了它,最後兩行沒有顯示。整個事情是一個6行4列的表格,每個字段都是一個按鈕。 所有的按鈕必須在一個屏幕上(不可滾動),並且按鈕應該在所有屏幕上看起來足夠大。在較小的屏幕上顯示所有的TableRows
我開發了一切使用DP,即使是因爲我不知道爲什麼我現在有這個問題。 這裏是我的xml:
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg"
tools:context=".MainActivity">
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="22dp" >
<Button
android:id="@+id/button1"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/willi"
/>
<Button
android:id="@+id/button2"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="70dp"
android:background="@drawable/willi"
/>
<Button
android:id="@+id/button3"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="140dp"
android:background="@drawable/willi"
/>
<Button
android:id="@+id/button4"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="210dp"
android:background="@drawable/willi"
/>
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="wrap_content"
android:layout_height="22dp"
android:layout_marginTop="90dp">
<Button
android:id="@+id/button5"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/willi"
/>
<Button
android:id="@+id/button6"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="70dp"
android:background="@drawable/willi"
/>
<Button
android:id="@+id/button7"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="140dp"
android:background="@drawable/willi"
/>
<Button
android:id="@+id/button8"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="210dp"
android:background="@drawable/willi"
/>
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="wrap_content"
android:layout_height="22dp"
android:layout_marginTop="90dp" >
<Button
android:id="@+id/button9"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button10"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="70dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button11"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="140dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button12"
android:layout_marginLeft="210dp"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/willi" />
</TableRow>
<TableRow
android:id="@+id/tableRow4"
android:layout_width="wrap_content"
android:layout_height="22dp"
android:layout_marginTop="90dp" >
<Button
android:id="@+id/button13"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button14"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="70dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button15"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="140dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button16"
android:layout_marginLeft="210dp"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/willi" />
</TableRow>
<TableRow
android:id="@+id/tableRow5"
android:layout_width="50dp"
android:layout_height="22dp"
android:layout_marginTop="90dp" >
<Button
android:id="@+id/button17"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button18"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="70dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button19"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="140dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button20"
android:layout_marginLeft="210dp"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/willi" />
</TableRow>
<TableRow
android:id="@+id/tableRow6"
android:layout_width="wrap_content"
android:layout_height="22dp"
android:layout_marginTop="90dp" >
<Button
android:id="@+id/button21"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button22"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="70dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button23"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="140dp"
android:background="@drawable/willi" />
<Button
android:id="@+id/button24"
android:layout_marginLeft="210dp"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/willi" />
<TextView
android:id="@+id/tvPunktewaehrend"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textStyle="bold"
android:layout_gravity="center_horizontal"
android:textColor="@color/white"
android:textSize="20sp"
android:text=" " />
</TableRow>
</TableLayout>
我在做什麼錯?
不要使用任何數據庫或任何東西的寬度和高度..同一時間包裝也是危險的。將db中的所有高度替換爲所有按鈕的fill_parent – Amsheer
? fill_parent到底做了什麼?如果我這樣做,按鈕將顯示爲大,因爲他們在我認爲的每個屏幕上?! – user896692
當然是爲每個表格行設置fill_parent,然後將表格佈局高度設置爲match_parent,因此頁面爲所有屏幕設置。 – Amsheer