2013-08-05 64 views
0

我有一個GridLayout的這個方案GridLayout的和的TextView

-COL0-COL1 - COL2
[-------] [TextView的]
[-------] [ TextView中]
[-IMG-] [的RatingBar]
[-------] [TextView的]
[-------] [TV] - [TV]

所以IMG有ROWSPAN = 5
TEXTVIEW1,TEXTVIEW2,RATINGBAR,TEXTVIEW3有colSpan = 2;
TEXTVIEW1和TEXTVIEW2可以有很長的文字,它從網絡中檢索數據.. 這就是問題所在,如果文本太長,它只是作物它..我想如果太長的文字去新行..

這是我的XML

<GridLayout 
    android:id="@+id/activity_schedabook_gridlayout_top" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" 
    android:rowCount="5" > 

    <ImageView 
     android:id="@+id/activity_schedabook_imageview_copertina" 
     android:layout_column="0" 
     android:layout_gravity="left" 
     android:layout_row="0" 
     android:layout_rowSpan="5" /> 

    <TextView 
     android:id="@+id/activity_schedabook_textview_titolo" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_column="1" 
     android:layout_columnSpan="2" 
     android:layout_gravity="left|center_vertical" 
     android:layout_row="0" 
     android:ellipsize="marquee" 
     android:lines="2" 
     android:marqueeRepeatLimit="marquee_forever" 
     android:textSize="15sp" 
     android:textStyle="bold" /> 

    <TextView 
     android:id="@+id/activity_schedabook_textview_sottotitolo" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_column="1" 
     android:layout_columnSpan="2" 
     android:layout_gravity="left" 
     android:layout_row="1" 
     android:ellipsize="marquee" 
     android:lines="2" 
     android:marqueeRepeatLimit="marquee_forever" /> 

    <RatingBar 
     android:id="@+id/activity_schedabook_ratingbar" 
     style="?android:attr/ratingBarStyleSmall" 
     android:layout_column="1" 
     android:layout_columnSpan="2" 
     android:layout_gravity="left" 
     android:layout_row="2" 
     android:isIndicator="true" 
     android:max="5" 
     android:numStars="5" /> 

    <TextView 
     android:id="@+id/activity_schedabook_textview_autore" 
     android:layout_column="1" 
     android:layout_columnSpan="2" 
     android:layout_row="3" 
     android:textStyle="italic" /> 

    <TextView 
     android:id="@+id/activity_schedabook_textview_categoria" 
     android:layout_column="1" 
     android:layout_gravity="left" 
     android:layout_row="4" /> 

    <TextView 
     android:id="@+id/activity_schedabook_textview_sottocategoria" 
     android:layout_column="2" 
     android:layout_gravity="left" 
     android:layout_row="4" /> 

</GridLayout> 
+0

有*是*一在GridLayout中使用'TextView'的一致方式。看看我的答案在這裏:http://stackoverflow.com/a/23090059/1208581 – sulai

回答

0

這裏就是創建視圖喜歡的佈局:

<TextView 
android:id="@android:id/text1" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:minHeight="?android:attr/listPreferredItemHeight" 
android:textAppearance="?android:attr/textAppearanceLarge" 
android:textColor="@android:color/primary_text_light_disable_only" 
android:gravity="center_vertical" 
android:paddingLeft="14dip" 
android:paddingRight="15dip" 
android:ellipsize="marquee"/> 

正如你可以看到ellipsize設置爲字幕,所以我不相信這是有史以來書面意圖允許多行。

沒有在時刻,橢圓點是從來沒有表現出開放的錯誤:http://code.google.com/p/android/issues/detail?id=10554

+0

它不起作用 –

+0

試試@Alan Jay Weiner回答[http://stackoverflow.com/questions/5033012/auto-scale -textview文本到裝修中界。 – Lawrance

+0

已經嘗試過..它只是裁剪我的文本..不知道爲什麼..也許我用錯了方式? –

0

中心的TextView在網格佈局這裏是代碼:

<TextView 
 
       android:layout_width="wrap_content" 
 
       android:layout_height="wrap_content" 
 
       android:text="1" 
 
       android:textSize="20sp" 
 
       android:layout_gravity="center" 
 
       android:textColor="#ffffff" 
 
       android:id="@+id/addPoints" 
 
       android:layout_columnSpan="2" 
 
       android:layout_rowSpan="2"/>