我在下面发布了更大的代码块。您可以看到,最初QUOTE是程序编码的。我正在尝试学习如何使用声明式设计,所以我想做同样的事情,但通过使用资源。看起来我需要通过@ R.id标签访问string.xml并使用该字符串值标识QUOTE。但我不知道谈判这个问题。有小费吗?谢谢!
public class circle extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new GraphicsView(this));
}
static public class GraphicsView extends View {
//private static final String QUOTE = "Happy Birthday to David.";
private final String QUOTE = getString(R.string.quote);
.....
@Override
protected void onDraw(Canvas canvas) {
// Drawing commands go here
canvas.drawPath(circle, cPaint);
canvas.drawTextOnPath(QUOTE, circle, 0, 20, tPaint);
}
}
答案 0 :(得分:0)
基本上我想要有相同的文字 但作为strings.xml中的资源
至少,您注意了一个名为res/values/strings.xml
的文件,其中包含以下内容:
<resources>
<string name="quote">Happy Birthday to David.</string>
</resources>
然后使用getString(R.string.quote)
获取Java代码中的字符串值。请注意,您可能已经在创建项目时为您创建了res/values/strings.xml
文件,因此只需将上面显示的<string>
元素与该文件中的其他元素一起添加。
有人可以请教我一点 并推荐一个很好的资源 这些类型的问题?我正在使用 HelloAndroid此刻和我也是 有“开始Android”。
Beginning Android 的第175-180页介绍了字符串资源。该部分can be found here的示例项目的当前版本。