我有相當多的是asked here一年前同樣的問題 - 如何實現在一個不錯的方式表視圖控件,就像在this screenshot。這個問題沒有很好的答案,所以轉貼。
我用ListView
作爲其行,其中包含幾個TextView
元素和ImageView
。但麻煩在於,每列在列寬方面與其他列完全無關。如果一行中的一列中的文本比另一行中的文本長,則兩者不會垂直對齊。 GridView
似乎不適合我的情況,因爲它意味着顯示存儲在列表中的同質數據,並將其顯示在列中 - 如圖片網格。任何想法如何實現?謝謝。
更新。 好的,我剛剛找到了解決方案here。在我的表格行的線性佈局中,儘管設置了android:layout_weight
,但我錯誤地將android:layout_width
設置爲wrap_content
。將其設置爲0dip
使得LinearLayout中的所有TextView在每一行中具有相同的寬度。下面是我的行的示例:
<?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:orientation="horizontal"
android:padding="6dip">
<TextView
android:id="@+id/toptext"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="2"
android:textSize="24sp"
/>
<TextView
android:id="@+id/bottomtext"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="3"
android:textSize="24sp"
/>
<ImageView
android:id="@+id/play"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:src="@drawable/play_1"
android:clickable="true"
/>
</LinearLayout>
jquery mobile help?只是一個想法 – visista
你應該閱讀佈局。 RelativeLayout,LinearLayout,GridLayout等等。它們被組合在一起,形成你在那裏看到的佈局。我可以給你一些線索(我還沒有編碼android幾個月......):你可以很明顯地看到他們在這種情況下使用了一個帶有5列的GridLayout(或者佈局,他們已經爲每列分配了權重)將文本分成最多4個字符或任何你喜歡和適合的字符。這是很多方法來實現這個 – LuckyLuke
正如GrAnd指出的那樣Layouts並不意味着要顯示大量的數據,這是我的情況不幸的。 @visista我最初嘗試用Sencha Touch和這個項目的phonegap,但原型使用的RAM數量是不可接受的(22Mb),所以我決定去土生土長。 – SimpleMan