web-dev-qa-db-ja.com

フレックステキストエリアでテキストを改行する方法

紐があります

var s:String = "This is a line \n This is another line.";
this.txtHolder.text = s; //.text has \n, not a new line

テキスト領域に入れたいのですが、改行文字は無視されます。割り当てられたときにテキストを希望の場所で改行させるにはどうすればよいですか?

25

フレックス上、コーディング中\nmxmlまたはxmlでうまく機能しており、
行エンティティ。

というのは:

lazy
fox

くれます

lazy<br />
fox
44

{\ n}ではなく{'\ n'}

9
Guillaume Morin

@radekg

OPは、MXML構文で記述されたテキスト文字列を参照しています。

<mx:TextArea text="This is a &#13; new line" />
5
noobular

試す

"This is a line {\n} This is another line."

または、htmlText属性を使用して、

"This is a line <br> This is another line." 
3
Hates_

Flexでは、前の行の隣に行を配置しようとしている場合。次に、それを前の行に追加します。

var line:String="Hello";
textarea1.text += line;

この文字列を印刷したいテキストエリアであるtextarea1が追加されます。

0
Anuj Sharma

私は次のコードをテストしました:

<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.Adobe.com/2006/mxml"
    creationComplete="onComplete();">
    <mx:Script>
        <![CDATA[
            private function onComplete():void {
                var s:String = "This is a line \n This is another line.";
                this.txtHolder.text = s;
            }
        ]]>
    </mx:Script>
    <mx:TextArea id="txtHolder" />
</mx:WindowedApplication>

そしてmx:Text

<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.Adobe.com/2006/mxml"
    creationComplete="onComplete();">
    <mx:Script>
        <![CDATA[
            private function onComplete():void {
                var s:String = "This is a line \n This is another line.";
                this.txtHolder.text = s;
            }
        ]]>
    </mx:Script>
    <mx:Text id="txtHolder" />
</mx:WindowedApplication>

どちらも問題なく動作しています。たぶん、あなたはmx:TextInputまたはmx:Labelを使用していますか?

0
radekg

やったほうがいい:

var s:String = "This is a line" + "\n" + "This is another line.";
this.txtHolder.text = s;

それでおしまい。

0
Jameel

私は次のようにこれをやった、

protected function addToTextArea(array:Array):void
            {
                textArea.text = "Array Elements are:";
                for(var k:int = 0; k < array.length; k=k+1)
                 {
                    textArea.text = textArea.text +"\n"+ array[k];
                 }
            }

トルガハンアルバラック

0
Kans

HtmlTextを使用している場合は、機能するか、少なくとも<br \>(「br」の前のスペースなし)が機能するはずです。

私はXMLを使用してTextAreaに入力していましたが、XML内でHTMLを使用する方法が完全にわからないため(CDATAタグでラップする必要があると述べています)、単純な

txt.replace("\\n", "<br/>");

たぶん、もっと良い方法があるでしょうが、これはうまくいきます。

編集:「br」の後にスペースがありました

0
nevets1219