在Webview的sharedpreference中添加Webview起始URL

问题描述

|| 我仍在学习Java。我正在尝试使用SharedPreferences在WebView中设置URL,以便可以设置下次启动应用程序时显示页面。 并尝试使用菜单设置/更改值。 这是我到目前为止的内容
  public class test extends Activity {

public static final String PREFS_NAME = \"SharedPreferences\";

public static final String PREF_STRING = \"http://www.google.com\";
private SharedPreferences mPrefs;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    mPrefs = getSharedPreferences(PREFS_NAME,0);
    webview = new WebView(this) {

    };
    webChromeClient = new WebChromeClient() {

    };

    webview.setWebChromeClient(webChromeClient);
    webview.setWebViewClient(webViewClient);
    setContentView(webview);

    /** Load the browser Settings */
    webview.loadUrl(PREF_STRING);

    SharedPreferences settings = getSharedPreferences(\"StartPage\",0);
    settings.getString(\"PREF_STRING\",\"http://www.google.com\");

}

/** Begin Globals */
public WebView webview;
public WebChromeClient webChromeClient;
public WebViewClient webViewClient;

/*** define menu options */
private static final int MENU_PAGE1 = 1;
private static final int MENU_PAGE2 = 2;

/*** menu items */
public boolean onCreateOptionsMenu(Menu menu) {
    menu.add(0,MENU_PAGE1,\"Set page 1 to show when app is started\");
    menu.add(0,MENU_PAGE2,\"Set page 2 to show when app is started\");

    return true;
}

public boolean onoptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case MENU_PAGE1:
        Editor e = mPrefs.edit();
        e.putString(PREF_STRING,\"http://www.yahoo.com\");
        e.commit();

        Toast.makeText(this,\"Page 1 is set!\",Toast.LENGTH_SHORT).show();

        return true;
    }
    switch (item.getItemId()) {
    case MENU_PAGE2:
        Editor e = mPrefs.edit();
        e.putString(PREF_STRING,\"http://www.ask.com\");
        e.commit();

        Toast.makeText(this,\"Page 2 is set!\",Toast.LENGTH_SHORT).show();

        return true;

    }

    return false;

}
}
到目前为止还很近...有任何提示或想法吗?     

解决方法

        
Try this:

@Override
public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);

    mPrefs = getSharedPreferences(PREFS_NAME,0);
    webview = new WebView(this) {

    };
    webChromeClient = new WebChromeClient() {

    };

    webview.setWebChromeClient(webChromeClient);
    webview.setWebViewClient(webViewClient);
    setContentView(webview);

    /* Load the last saved preference. */
    webview.loadUrl(mPrefs.getString(PREF_STRING,\"http://www.google.com\"));

}
    

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...