如何将android资源int转换为字符串.例如:android.R.string.cancel?

Hug*_*oXP 24 android android-resources

如何从此资源中获取字符串值"cancel"int:android.R.string.cancel?

谢谢

Sam*_*Sam 48

只需使用Context#getString():

String string = getString(android.R.string.cancel);
Run Code Online (Sandbox Code Playgroud)

我已经尝试过这种方法,但没有成功......我上课了: public class MyDialogFragment extends DialogFragment {

DialogFragment不是Context的子类,因此您需要访问有效的(如您的Activity).用这个:

String string = getActivity().getString(android.R.string.cancel);
Run Code Online (Sandbox Code Playgroud)

或者正如您所发现的那样,您可以使用传入的Activity onAttach(),但只要您有一个有效的Context 可以使用,您就可以在Fragment中的任何位置执行此操作.


Sir*_*ius 7

如下所示:http://developer.android.com/reference/android/content/Context.html#getString(int)

String s = context.getString(android.R.string.cancel);
Run Code Online (Sandbox Code Playgroud)

context可以是当前活动,也可以是继承Context抽象类的任何对象.