0

テキストファイルがあり、そのテキストをテキストビューの数で表示したいので、実行時にテキストを設定します。

これが私のプログラムに使用する私のコードです:

while(text.length() > 0)
    {
        text = text.trim();
        int index = text.indexOf("L1");
        int index2 = 0;
        temp = "";
        if(index > -1 && index == 0)
        {
            index2 = text.indexOf("/L1");
            temp = text.substring(index + 2, index2);
            temp.trim();
            t = temp.toCharArray();
            text = text.substring(index2 + 3, text.length());
            index = text.indexOf("\r\n");
            while(index > -1 && index == 0)
            {
                temp += "\r\n";
                text = text.substring(index + 2, text.length());
                index = text.indexOf("\r\n");
            }
            temp = String.valueOf(t);
        }
        else
        {
            index = text.indexOf("L2");
            if(index > -1 && index == 0)
            {
                index2 = text.indexOf("/L2");
                temp = text.substring(index + 2, index2);
                text = text.substring(index2 + 3, text.length());
                index = text.indexOf("\r\n");
                while(index > -1 && index == 0)
                {
                    temp += "\r\n";
                    text = text.substring(index + 2, text.length());
                    index = text.indexOf("\r\n");
                }
            }
            else
            {
                index = text.indexOf("List");
                if(index > -1 && index == 0)
                {
                    index2 = text.indexOf("/List");
                    temp = text.substring(index + 4, index2);
                    text = text.substring(index2 + 5, text.length());
                    index = text.indexOf("\r\n");
                    while(index > -1 && index == 0)
                    {
                        temp += "\r\n";
                        text = text.substring(index + 2, text.length());
                        index = text.indexOf("\r\n");
                    }
                }
                else
                {
                    text = text.trim();
                    index = text.indexOf("Plain");
                    if(index > -1 && index == 0)
                    {
                        index2 = text.indexOf("/Plain");
                        temp = text.substring(index + 5, index2);
                        text = text.substring(index2 + 6, text.length());
                        index = text.indexOf("\r\n");
                        while(index > -1 && index == 0)
                        {
                            temp += "\r\n";
                            text = text.substring(index + 2, text.length());
                            index = text.indexOf("\r\n");
                        }
                    }
                }
            }
        }

    }
    for(int i = 0; i < texts.length; i++)
    {
        TextView tv = new TextView(this);
        tv.setText(Farsi.Convert(texts[i]));
        Typeface font = Typeface.createFromAsset(getAssets(), "fonts/naz.ttf");
        tv.setTypeface(font);
        tv.setTextColor(Color.BLACK);
        tv.setGravity(Gravity.RIGHT);
        tv.setPadding(10, 10, 10, 10);
        tv.setLayoutParams(params);
        linearLayout.addView(tv);
    }
    layout.addView(linearLayout);
    LinearLayout.LayoutParams p = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
    this.addContentView(layout, p);
}

テキストファイルで何らかの理由で補助語(「L1」や「/ L1」など)を使用しているため、実行時にそれらが削除されます。しかし、プログラムを実行すると、出力でテキストビューに表示されるテキストが正しいスタイルではないので、右に揃えたいのですが、出力には入力にない追加のテキストがいくつかありますテキストファイル。

以下の2つの画像では、入力テキストファイルに補助語がある場合とない場合の出力を添付しています。

助動詞付きの出力:

助動詞付きの出力:

補助語なしで出力します。この状態で、「setContentView」関数を使用してレイアウトの内容を設定し、補助語インデックスを使用してテキストを分割する代わりにファイル全体を読み取ります。この状態では、入力に補助語は含まれていません。

助動詞なしで出力

問題の友達は何ですか?ありがとう

4

1 に答える 1

1

まず第一に、文字列を分割するために
使用します。文字列A、B、Cがあり、出力を使用すると、部分文字列の配列、つまり[A、B、C]になります。ただし、これは、同じ区切り文字を使用できる場合、つまり L1 と L2 が同じになる場合に役立ちます。String.split()

myString.split(,)

2 番目:android:gravity="right"textviewで使用できますlayout.xml。これにより、文字列が左揃えになる問題が解決されます。

于 2013-01-08T17:11:06.873 に答える