11

以下是我遇到的问题类型的示例。我在 pojo 中有数据,需要在 textview 中显示...数据有伪代码,用 [p] 表示每个段落

当它们显示在文本视图中时,我想以某种方式将 [p] 解析为段落。这可以做到吗?有什么东西可以代替 [p] 来在 textview 中创建一个新段落吗?

Question question = new Question();
question.setText("Here is the first paragraph.[p] And this should be the second."); 

TextView view = (TextView) findViewById(R.id.qtext);
view.setText(question.getParsedText());
4

4 回答 4

10

嗨,我会解析整个字符串,然后根据需要将每个 [p] 替换为 \n 甚至 \n\n 。

字符串中的 \n 进行换行。例如像这样使用它:

question.setText("Here is the first paragraph.\n\n And this should be the second.");`

可以轻松做到这一点的方法是String.replace(...)

于 2010-06-05T07:00:44.753 回答
5

你也可以试试这个

String summary = "<html><font color=\"#FFFFFF\"" +
     
             "<p align="+ "\"" +"left" + "\""+ ">" +  "MY data" +"</p>"+
     
                "</font></html>";
mTextView.setText(Html.fromHtml(summary));
于 2011-12-07T05:25:31.327 回答
1
TextView tw = findViewById(R.id.t);
tw.setText("first line\nsecond line\nthird line");
于 2017-03-05T19:52:38.747 回答
0

<br>如果您需要其他格式(如粗体)并且<p>位于中间,则可以使用Html.fromHtml

import android.app.Activity;
import android.os.Bundle;
import android.text.Html;
import android.widget.TextView;

public class Main extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        final TextView tv = new TextView(this);
        tv.setText(Html.fromHtml("first<br><b>second</b>"));
        setContentView(tv);
    }
}

在安卓 22 上测试。

于 2016-02-08T13:51:12.200 回答