我目前正在嘗試學習Android。現在一直在閱讀教程和手冊。 我被困在佈局問題。橢圓大小不工作在這張表佈局
我從網頁中刪除內容並將其顯示給用戶。這是我的應用程序的工作。
我的佈局如下:
<?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="vertical" android:padding="5px">
<TextView
android:id="@+id/tvOutput"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_marginTop="5dp">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TableLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:stretchColumns="0" android:id="@+id/tblOutput">
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow4"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow5"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow6"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow7"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow8"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow9"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow10"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
<TableRow
android:id="@+id/tableRow11"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>
</TableLayout>
<Button
android:id="@+id/btnBack"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/lblBack" android:layout_marginTop="10dip"/>
<Button
android:id="@+id/btnSendSMS"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:text="@string/lblSendSMS" />
</LinearLayout>
</ScrollView>
通過代碼,我會通過TableRows循環,並添加每兩個TextViews。下面是一個示例一塊吧:
for(i=1;i<=11;i++){
TextView tv1 = new TextView(getApplicationContext());
TextView tv2 = new TextView(getApplicationContext());
//get values and store it in strValue1 & strValue2
//....
tv1.setText(strValue1); //a long text
tv2.setText(strValue2); //would always be a 3 letter value
//tv1.setEllipsize(TruncateAt.MARQUEE);
//tv1.setMarqueeRepeatLimit(1);
tv1.setSingleLine(true);
tv1.setEllipsize(TruncateAt.END);
tv1.setGravity(Gravity.LEFT);
tr = (TableRow) findViewById(getResources().getIdentifier("tableRow"+i, "id", getPackageName()));
tr.addView(tv1);
tr.addView(tv2);
}
的問題是,setEllipsize()對每個的TableRow第一的TextView沒有做任何事情。它只顯示第一個TextView的文本(長文本溢出寬度),TextView2甚至不顯示。
當我嘗試setEllipsize()和setSingleLine()在一個現有的TextView(我的佈局中的第一個TextView - 你可以從上面的XML,這是在表格佈局上面)看到,它工作正常。
任何想法,我哪裏出錯了?或者有什麼建議?
感謝提前:)
謝謝:)我試圖使用'設定的TextView的最大線setMaxLines(1)'。但這不起作用。我會嘗試將'Layout_Height'設置爲'fill_parent'。爲此我必須創建一個TableLayout參數並將規則添加到它? – 2012-04-06 02:37:42
也玩寬度。在包裝內容中,在寬度根據內容而變化的情況下,可以看到這個問題。 – Shubhayu 2012-04-06 04:33:44
我曾嘗試將fill_parent設置爲所有TextViews的父項。但那沒有奏效。現在試圖玩寬度。要爲駐留在TableRow(位於TableLayout中)的TextView設置佈局參數(FILL_PARENT),是否必須創建TableLayout的對象並將其傳遞給TextView的setLayoutParams? – 2012-04-08 06:13:52