我正在尝试使用OuterClass.this
从ResultCallback接口中访问顶级活动(MainActivity),但错误显示:
无法解析符号OuterClass
我正在使用适用于Android的Google API的文档中来自SettingsApi的示例代码。
另外,我收到另一个错误消息:
无法解析符号REQUEST_CHECK_SETTINGS
MainActivity.java
public class MainActivity extends AppCompatActivity {
...
...
protected void createLocationRequest() {
...
...
result.setResultCallback(new ResultCallback<LocationSettingsResult>() {
@Override
public void onResult(LocationSettingsResult result) {
final Status status = result.getStatus();
final LocationSettingsStates = result.getLocationSettingsStates();
switch (status.getStatusCode()) {
case LocationSettingsStatusCodes.SUCCESS:
...
break;
case LocationSettingsStatusCodes.RESOLUTION_REQUIRED:
try {
status.startResolutionForResult(
OuterClass.this,
REQUEST_CHECK_SETTINGS);
} catch (SendIntentException e) {
...
}
break;
case LocationSettingsStatusCodes.SETTINGS_CHANGE_UNAVAILABLE:
...
break;
}
}
});
}
}
谢谢!
最佳答案
看起来REQUEST_CHECK_SETTINGS只是值1的局部整数。
Here's a link到声明以下内容的github示例:
protected static final int REQUEST_CHECK_SETTINGS = 0x1;
然后在调用它时使用与代码相同的函数:
case LocationSettingsStatusCodes.RESOLUTION_REQUIRED:
...
status.startResolutionForResult(getActivity(), REQUEST_CHECK_SETTINGS);
先前已在StackOverflow上问过此问题。
我当然可以理解混乱。
在Google Android documentation中的示例中使用了REQUEST_CHECK_SETTINGS,而没有解释该值的含义。
即使在documentation specifically about Status.startResolutionForResult中,它也将参数描述为:“传递给onActivityResult的请求代码。”
关于java - 无法解析符号OuterClass,REQUEST_CHECK_SETTINGS(Android),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46018756/