【问题标题】:/FIXED\ Android - TextView.setText string with \n problem/FIXED\ Android - 带有 \n 问题的 TextView.setText 字符串
【发布时间】:2018-11-09 21:08:51
【问题描述】:

我有一个方法可以从 Firebase 中检索一些文本:

    db = FirebaseFirestore.getInstance();
    db.collection("Contact").get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
        @Override
        public void onComplete(@NonNull Task<QuerySnapshot> task) {
            if (task.isSuccessful()) {
                for (DocumentSnapshot document : task.getResult()) {
                    String textt = (document.getString("Text"));
                    settext(textt);
                }
            }
        }
    });

当我检索字符串“文本”时,我调用 settext 方法:

private void settext(String textt){
    mainTextView.setText(textt);
}

这是字符串 textt 的值:“azerty123\nqwerty\ntest” 但是 mainTextView 打印 "azerty123\nqwerty\ntest" 没有换行符。

有人可以帮我吗?

已修复,只需将方法 settext 覆盖为:

private void settext(String textt){
    String text = textt.replaceAll("\\\\n", "\n");
    mainTextView.setText(text);
}

【问题讨论】:

    标签: android android-studio textview newline


    【解决方案1】:

    onComplete()里面试试这个:

    String textt = document.getString("Text").replaceAll("\\\\n", "\n");
    

    String textt = document.getString("Text").replace("\\n", "\n");
    

    以防万一来自数据库的字符串包含特殊字符。

    【讨论】:

    • 如果你找到我旧帖子的答案,我会接受它;)
    • 当然可以,但它不可重现而且很奇怪。
    • 我同意这一点
    猜你喜欢
    • 2014-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-10
    • 2011-06-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多