Android-Textansicht unterstützt keinen Zeilenumbruch

Ich erstelle programmgesteuert eine benutzerdefinierte Ansicht, in der Text angezeigt wird, der aus einer XML-Datei analysiert wird. Der Text ist lang und enthält das Zeichen "/ n" für erzwungene Zeilenumbrüche. Aus irgendeinem Grund zeigt die Textansicht das / n an und es gibt keine Zeilenumbrüche. Hier ist mein Code:

                    // get the first section body
                    Object body1 = tempDict.get("FIRE");
                    String fireText = body1.toString();

                    // create the section body
                    TextView fireBody = new TextView(getActivity());
                    fireBody.setTextColor(getResources().getColor(R.color.black));
                    fireBody.setText(fireText);
                    fireBody.setTextSize(14);
                    fireBody.setSingleLine(false);
                    fireBody.setMaxLines(20);
                    fireBody.setBackgroundColor(getResources().getColor(R.color.white));

                    // set the margins and add to view
                    layoutParams.setMargins(10, 0, 10, 0);
                    childView.addView(fireBody,layoutParams);

Der Text aus der XML-Datei sieht folgendermaßen aus:

Now is the time /n for all good men to /n come to the aid of their /n party

Es sollte als solches angezeigt werden.

Now is the time
for all good men to
come to the aid of their
party

Gibt es eine Einstellung, die ich vermisse?

AKTUALISIEREN

\ r \ n funktioniert, wenn ich es in meiner Ansicht fest codiere. dh:

String fireText = "Now is the time \r\n for all good men \r\n to come to the aid";

Eigentlich funktioniert \ n auch, wenn ich es hart codiere:

String fireText = "Line one\nLine two\nLine three";

Zu Ihrer Information

System.getProperty("line.separator");

Dies gibt eine Zeichenfolge von "/ n" zurück, sodass keine Konvertierung nach "/ r / n" erforderlich ist.

Leider stammen meine Daten aus einer XML-Datei, die analysiert und in einer Hashmap gespeichert wird. Ich habe folgendes versucht:

String fireText = body1.toString().replaceAll("\n", "\r\n");

\ N wird nicht durch \ r \ n ersetzt. Könnte es daran liegen, dass ich von einem Objekt in einen String konvertiere?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage