2017-06-17 21 views
-5

その番号の文章を表示したい。Android:番号の文字列を取得

のEditTextで番号を取得し、文章は、文字列のstring.xml 名前であることはある

sen_(number)

例: SEN_1、sen_25

が、私は文字列にコードを作ってみました、だから私はこれが好きだった。

(sentence_num is getString of EditText)(sen_1 is "Hello, world!")

String getTxtString = "getText(R.string.sen_" + sentence_num + ")"; 

    TextView scrambled_sen = (TextView)findViewById(R.id.scrambled_sentence); 
    scrambled_sen.setText(getTxtString); 

しかし、それはgetText(R.string.sen_1)、ない"Hello, world!"を示しています。

番号を表示するにはどうすればよいですか?

getTxtStringを文字列ではなくJavaコードに入れたいとします。

+0

正確に何をしたいですか –

+0

文字列リソースを動的にロードするようですか? [This](https://stackoverflow.com/questions/15121648/android-settext-with-getstring-using-variable-name/15121736#15121736)があなたが探しているものかもしれません。 – Ahmad

答えて

0

あなたは文字列を取得するためにgetResources().getIdentifier()を使用することができますが、より良いと非複雑な方法は、スイッチケースまたは他にあれば方法です。

If(editText value equals something){ 
    return getString(R.string.sen_1); 
} 

よう

何かがあなたも最初getIdentifier()メソッドを介して引き起こす可能性があるエラーを最小化します。

+0

私はすでにそれについて考えました。しかし、私は800文章を入れなければなりません。 –

+0

私の答えがあなたの質問に答えたなら、それを完全なものとしてマークしてください。 – XepterX

+0

さて、本当に申し訳ありませんが、これは私が望むものではありません。私は、それを使うときには、ほぼ900 'else if'を作らなければなりません。私が答えを見つけることができなければ、私はそれをチェックするでしょう。ありがとう。 –

関連する問題