2012-04-07 15 views
0

現在、私はBook-App(並べ替え)を構築中です。だから、たくさんのストリングがあり、ユーザーはどのラインから読み始めたいのかを選ぶことができます。つまり、第1章の文字列配列には200個の文字列があります。そして、ユーザーは20行目で読み始めることを望んでいます(既に前に行を読み込んでいるためです)。 20から200までのすべての文字列を表示するにはどうすればよいですか? 私が持っている:Androidで複数の文字列配列を表示する

Resources res = getResources(); 
    String[] Book= res.getStringArray(R.array.ChapterOne); 
    TextView ChapterOne= (TextView) findViewById(R.id.Text); 
    SuraAlFateha.setText(Book[20]); 

しかし、これは単にライン20をdiplaysしかし、私はそれが20(20-200)から、以下のすべての行を表示します。 どうすればいいですか? ありがとうございます。

答えて

1

あなたは同じように、一度にすべてのテキストを設定する必要がテキストに設定します。

String resultString = ''; 

for (int i = 20; i < Book.length; i++) 
    resultString = resultString + "\n" + Book[i]; 

SuraAlFateha.setText(resultString.substring(1)); 

または類似した何かを。

しかし、文字列を追加する前に必要なスペースを確保しておく必要があります。そうしないと、ランタイムとメモリの使用量が高くなる可能性があります。

+0

ありがとう:D助けてください – Ahmad

1

ブック[20]は配列の20番目の要素を与えるだけです。最後から20番目のテキストを取得する場合は、要素の範囲を文字列に結合する必要があります。

textarray utilsを使用すると、これを簡単に行うことができます。

String joinedLines = TextUtils.join("\n", java.utils.Arrays.copyOfRange(Book, 20, Book.length)); 
SuraAlFateha.setText(joinedLines); 
+0

ありがとう:D助けました – Ahmad

関連する問題