WebView with SharedPreferences



我存储了SharedPreference,但我不知道如何在Web视图中使用它。事实上,我想解决的是,根据存储在webview中的情况,它会请求http://myurlsharedpreference.com/mypage友善的因此,我希望http://myurlsharedpreference添加到/mypage中,并且所有内容都显示一个网络视图,这是可能的,如果是,我的变量如何存储:

公共类设置扩展活动实现OnClickListener{

CheckBox checkBox;
EditText editText;
Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.settings);
    checkBox = (CheckBox) findViewById(R.id.checkBox1);
    editText = (EditText) findViewById(R.id.editText1);
    button = (Button) findViewById(R.id.button1);
    button.setOnClickListener(this);
    loadSavedPreferences();
}
private void loadSavedPreferences() {
    SharedPreferences sharedPreferences = PreferenceManager
            .getDefaultSharedPreferences(this);
    boolean checkBoxValue = sharedPreferences.getBoolean("CheckBox_Value", false);
    String name = sharedPreferences.getString("storedName", "YourName");
    if (checkBoxValue) {
        checkBox.setChecked(true);
    } else {
        checkBox.setChecked(false);
    }
    editText.setText(name);
}
private void savePreferences(String key, boolean value) {
    SharedPreferences sharedPreferences = PreferenceManager
            .getDefaultSharedPreferences(this);
    Editor editor = sharedPreferences.edit();
    editor.putBoolean(key, value);
    editor.commit();
}
private void savePreferences(String key, String value) {
    SharedPreferences sharedPreferences = PreferenceManager
            .getDefaultSharedPreferences(this);
    Editor editor = sharedPreferences.edit();
    editor.putString(key, value);
    editor.commit();
}
@Override
public void onClick(View v) {
    // TODO Auto-generated method stub
    savePreferences("CheckBox_Value", checkBox.isChecked());
    if (checkBox.isChecked())
        savePreferences("storedName", editText.getText().toString());
    finish();
}

}

秒活动(点击按钮时我想要的位置)

public class SecondActivity extends Activity {
    ImageButton imageButton;
    ImageButton imageButton2;
    ImageButton imageButton3;
    ImageButton imageButton4;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.home);
        addListenerOnButton();
        addListenerOnButton2();
        addListenerOnButton3();
        addListenerOnButton4();
    } 
    public void addListenerOnButton() {
        imageButton = (ImageButton) findViewById(R.id.imageButton1);
        imageButton.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
               Toast.makeText(SecondActivity.this,
                "ImageButton is clicked!", Toast.LENGTH_SHORT).show();
            }

        });
    }
    public void addListenerOnButton2() {
        imageButton2 = (ImageButton) findViewById(R.id.imageButton2);
        imageButton2.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg1) {
               Toast.makeText(SecondActivity.this,
                "ImageButton2 is clicked!", Toast.LENGTH_SHORT).show();

            }

        });
    }
    public void addListenerOnButton3() {
        imageButton3 = (ImageButton) findViewById(R.id.imageButton3);
        imageButton3.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg2) {
               Toast.makeText(SecondActivity.this,
                "ImageButton3 is clicked!", Toast.LENGTH_SHORT).show();
            }

        });
    }
    public void addListenerOnButton4() {
        imageButton4 = (ImageButton) findViewById(R.id.imageButton4);
        imageButton4.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg3) {
              /* Toast.makeText(SecondActivity.this,
                "ImageButton4 is clicked!", Toast.LENGTH_SHORT).show();
 */
                WebView myWebView = (WebView) findViewById(R.id.webview);
                String UsersURL = [taken from shared preferences];
                String UsersURL = UsersURL+"/mypage";
                myWebView.loadUrl(UsersURL);
            }

        });
    }

试试这个:

WebView myWebView = (WebView) findViewById(R.id.webview);
String UsersURL = [taken from shared preferences];
String UsersURL = UsersURL+"/mypage";
myWebView.loadUrl(UsersURL);

编辑:

在您的第一项活动中:您将数据存储在SharedPreferences中,然后打开名为SecondActivity的新"活动"(例如)。假设您存储了一个名为:MyData的字符串,其值为"Hello"

如果您希望从存储在SharedPreferences:中的FirstActivity中检索SecondActivity中的值

您需要调用SharedPreferences,例如:

public String GetData(String dataname, String defaultValue){
    SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
    String name = sharedPreferences.getString(dataname, defaultValue);
    return name;
    }
Now within your second activity you call:

GetData("MyData"、"无值集");

它将返回您以前存储的数据字符串。

最新更新