-1

通常、R.String.btnClose を使用して ID を取得します。
次のコードを使用して識別したいと考えています。コードが間違っていることはわかっています。Java がマクロ var をサポートしているかどうかわかりません。サポートしている場合、どのようにコードを記述すればよいですか? ありがとう!

文字列 s="btnClose"
R.string.s

4

2 に答える 2

1

試してみることをお勧めしResources.getIdentifierます。

に相当する

int id = R.string.btnClose;

だろう

int id = getResources().getIdentifier("btnClose", "string", getPackageName());

注: この関数の使用は推奨されません。名前でリソースを取得するよりも、識別子でリソースを取得する方がはるかに効率的です。

たとえばMap<String, Integer>、名前から ID を返す を持つことができます。

于 2013-06-23T10:08:38.717 に答える
0

アクティビティ内でこれを使用します:

String s = getString(R.string.btnClose );

活動していない :

public String getText(Context context, int resourceId)
{
    Resources resources = context.getResources();
    return resources.getString(resourceId);
}
于 2013-06-23T09:46:51.607 に答える