0

今日、Android アプリの開発を開始し、入力 (色) としてテキストを受け取り、ユーザーが選択した色でテキスト入力を返す小さなアプリを作成したいと考えていました。

この方法で、colors.xml を作成することから始めました。

<color name="white">#FFFFFF</color>
<color name="yellow">#FFFF00</color>
...

次に、メイン アクティビティに EditText を作成し、onCreate に含まれる色付きのテキストを表示するアクティビティを作成しました。

Intent intent = getIntent();
String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);

// Create the text view
TextView textView = new TextView(this);
textView.setTextSize(70);
textView.setText(message);

これはうまくいきましたが、テキスト文字列を取得して、colors.xml の色と一致させる方法を管理できませんでした。BASH のパラメーター置換の行で、次のようなことを考えていました。

textView.setBackgroundColor(getResources().getColor(R.color.XXXXXX));

しかし、「メッセージ」を入れるとうまくいかないので、「XXXXXX」の代わりに何を入れればいいのかわかりませんが、直接色名(赤など)を入れると機能しますが、1色のみです。

また、多くの色に対してできるだけ一般的なものにしたいため、case ステートメントを避けようとしています。この方法または別の方法で、これが可能かどうかを誰でも提案できますか。些細なことで申し訳ありませんが、私は Java にあまり自信がありません。

前もって感謝します。

4

2 に答える 2

0

この R.color.XXXXXX は整数です。XXX だけでなく、パラメーター全体を取得する必要があります。基本的には、色を静的な整数変数に格納し、条件に応じて使用できます。お役に立てれば。

于 2013-08-25T20:43:19.410 に答える