我正在关注放置here的解决方案,并获取一个无法解析方法put(java.lang.string,java.lang.string)我试图避免在我的webview中丢失数据更改而不手动处理方向更改。
我的代码发布在下面:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myWebView = (WebView) findViewById(R.id.webcontent);
myWebView.getSettings().setJavaScriptEnabled(true); // enable javascript
myWebView.loadUrl("file:///android_asset/Welcome.html");
BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);
}
@Override
protected void onPause() {
super.onPause();
SharedPreferences prefs = context.getApplicationContext().
getSharedPreferences(context.getPackageName(), Activity.MODE_PRIVATE);
Editor edit = prefs.edit();
edit.put("lastUrl",myWebView.getUrl());
edit.commit(); // can use edit.apply() but in this case commit is better
}
@Override
protected void onResume() {
super.onResume();
if(myWebView != null) {
SharedPreferences prefs = context.getApplicationContext().
getSharedPreferences(context.getPackageName(), Activity.MODE_PRIVATE);
String s = prefs.getString("lastUrl","");
if(!s.equals("")) {
myWebView.loadUrl(s);
}
}
}
答案 0 :(得分:3)
编辑器不包含方法“put”。
因为你想要一个网址,你可以使用Editor.putString代替
所以你去了
edit.putString("lastUrl",myWebView.getUrl());
答案 1 :(得分:1)
对于SharedPreferences.Editor没有put方法。 正确的应该是
edit.putString("lastUrl",myWebView.getUrl());
您可以在此处找到更多信息SharedPreferences.Editor