我如何使用String变量而不是在android中使用R.id.webview1

时间:2013-11-24 04:36:21

标签: java android

如:

String ResId="R."+"id."+"webview1";

然后使用ResId作为findViewById方法的参数,如 -

WebView webv= (WebView)findViewById(ResId);

请为我回答......

2 个答案:

答案 0 :(得分:7)

最简单的方法是使用Resources.getIdentifier()。在你的情况下,它会是这样的:

String ResId = "webview1";
int id = getResources().getIdentifier(ResId, "id", getPackageName());
WebView webv = (WebView) findViewById(id);

您需要这样做,因为findViewById()只会使用int参数。

如果您需要对不同类型的资源(例如布局,可绘制等)执行相同操作,则应将相应的String替换为第二个参数。也就是说,“布局”,“可绘制”等等。

答案 1 :(得分:0)

R.id.webView1是一个整数而不是String只需将其更改为:

int ResId = R.id.webview1;

如果有效,请给我反馈;)快乐编程