1

我可能在这里遗漏了一些非常明显的东西。我创建了一个名为 str 的新字符串,但是当我尝试将字符串值从 strings.xml 分配给它时,我收到错误“方法 getString(int) 未定义为 String 类型”。不知道为什么它认为它是一个int?

如果我只设置 str =“我的字符串”,它工作正常吗?

@Override
public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_display_clinics);

}

public void onRadioButtonClicked(View view) {

    // initialize the string variable
    String str; 

    // Is the button now checked?
    boolean checked = ((RadioButton) view).isChecked();
    // Check which radio button was clicked
    switch (view.getId()) {
    case R.id.radioCounty1:
        if (checked)
            str.getString(R.string.County1);
        break;
    case R.id.radioCounty2:
        if (checked)
            str.getString(R.string.County2);
        break;
    }
4

5 回答 5

3

String没有成员getString。您可能正在寻找Context.getString(int).

在这里你可以找到文档。

于 2013-11-06T09:33:36.523 回答
2

String 没有名为 的方法getString

你应该使用

str = Activity_name.this.getResources().getString(R.string.County1);

其中 Activity_name 是当前活动的名称

于 2013-11-06T09:41:04.327 回答
1

由于 String 没有 getString() ,因此您不能直接将它与 String 一起使用。相反,您不能使用

str = getResources().getString(R.string.County1);

或者

str = Context.getString(R.string.County1);
于 2013-11-06T09:45:54.473 回答
1

你必须str = getResources().getString(R.string.County1) 改用

于 2013-11-06T09:34:27.277 回答
1

传递上下文上下文的实例

然后使用

context.getResources().getString(R.string.text1) 这里的上下文属于您当前的活动。

于 2013-11-06T09:35:42.517 回答