【发布时间】:2013-08-25 20:32:52
【问题描述】:
我今天开始 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”,因为放“消息”是行不通的,但放直接颜色名称(例如红色)可以,但只适用于一种颜色。
我尽量避免使用 case 语句,也是因为我想让它对许多颜色尽可能通用。任何人都可以建议这是否可能,以这种方式或以另一种方式。如果这是微不足道的,我很抱歉,但我对 Java 没有太多信心。
提前谢谢你。
【问题讨论】: