android中的多列文本显示

时间:2013-05-01 08:22:40

标签: android android-layout

我想在2栏中显示文字。

Ex。我有大字符串,第一列添加第一列,屏幕高度结束后,应在第二列添加文字。就像新闻报道一样。

第一个第一列填充第二个。

但输出不合适。下面是输出图像。

enter image description here

java代码

final TextView tvl = (TextView)findViewById(R.id.textl);
final TextView tvr = (TextView)findViewById(R.id.textr);
final String text = "sdf";
tvl.post(new Runnable() {

    @Override
    public void run() {
        TextMeasure(text,tvl,tvr);
    }
    });

private void TextMeasure(String text,
TextView tvl,TextView tvr) {
// Get number of lines of text that will fit on the screen
int linesPerScreen = tvl.getHeight()/(tvl.getLineHeight() + (int)tvl.getLineSpacingExtra());
// Measure how much text will fit across the TextView
Paint paint = tvl.getPaint();
int textWidth = paint.breakText(text, 0, text.length(),
true, tvl.getWidth(), null);
// Total amount of text to fill the TextView is
// approximately:
int totalText = textWidth * linesPerScreen;
String leftText = text.substring(0,totalText);
String rightText = text.substring(totalText,
text.length());
tvl.setText(leftText);
tvr.setText(rightText);
}

XML

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    android:weightSum="2"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/textl"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:text="@string/hello_world" />
     <TextView
        android:id="@+id/textr"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:text="@string/hello_world" />
</LinearLayout>

0 个答案:

没有答案