我想保存一个网站,再次打开就是之前保存的网站,网址可以保存上,但是打开的时候还是原来的网站。求大神指教

qq_34269851 2018-04-21 02:46:11
package com.example.lenovo.mengdizhibo;

import android.app.ProgressDialog;
import android.content.Context;
import android.content.SharedPreferences;
import android.preference.Preference;
import android.preference.PreferenceManager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;


public class MainActivity extends AppCompatActivity {

private String url;
private ProgressDialog dialog;
private WebView webView;
private EditText editText;
private Button save;
private Button go;
private SharedPreferences sharedPreferences;
private SharedPreferences.Editor editor;
//private String web;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init();
//Log.e("web========","asda");
}
private void init() {
webView = (WebView) findViewById(R.id.web);
editText = (EditText) findViewById(R.id.text);
save = (Button) findViewById(R.id.btn);
go=(Button)findViewById(R.id.btn1);

//webView.loadUrl("http://www.baidu.com");
//获取SharedPreferences对象
Context context=MainActivity.this;
sharedPreferences=context.getSharedPreferences("MY_PRE",MODE_PRIVATE);
editor=sharedPreferences.edit();
editText.setText(sharedPreferences.getString("web",""));

save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String web=editText.getText().toString();
url=web;
editor.putString("web",url);
editor.commit();

Toast.makeText(MainActivity.this,"SUCCESS", Toast.LENGTH_SHORT).show();
}
});

if(url==null){
webView.loadUrl("http://www.baidu.com");
}else {
String str = editText.getText().toString();
url = str;
webView.loadUrl(url);
// Log.e("web========",url);
}

//editText.setText(webView.getUrl());
go.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String str = editText.getText().toString();
url = "http://" + str;
webView.loadUrl(url);
}
});
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
//启用支持javaScript
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
//webview加载页面优先使用缓存加载
webSettings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
//editText.setText(webView.getUrl());
// webView.setWebChromeClient(new WebChromeClient(){
// @Override
// public void onProgressChanged(WebView view, int newProgress) {
// //newProgress 1-100之间的整数
// if (newProgress == 100) {
// //网页加载完毕,关闭ProgressDialog
// closeDialo();
// } else {
// //网页正在加载,打开ProgressDialog
// openDialog(newProgress);
// editText.setText(webView.getUrl()); //实时显示当前网址
// editText.requestFocus(); //把输入焦点放在调用这个方法的控件上
// editText.setSelectAllOnFocus(true); //点击之后就被全选
// }
// }
// private void closeDialo() {
// if (dialog != null && dialog.isShowing()) {
// dialog.dismiss();
// dialog = null;
// }
// }
//
// private void openDialog(int newProgress) {
// if (dialog == null) {
// dialog = new ProgressDialog(MainActivity.this);
// dialog.setTitle("加载中...");
// dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
// dialog.setProgress(newProgress);
// dialog.show();
// } else {
// dialog.setProgress(newProgress);
// }
// }
// });
}
// @Override //改写物理按键——返回的逻辑
// public boolean onKeyDown(int keyCode, KeyEvent event) {
// if(keyCode == KeyEvent.KEYCODE_BACK){
// if(webView.canGoBack()){
// webView.goBack(); //返回上一页面
// return true;
// }else {
// System.exit(0);
// }
// }
// return super.onKeyDown(keyCode,event);
// }

}
...全文
1209 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_35947466 2018-04-25
  • 打赏
  • 举报
回复
你把url存到shareperefence里面之后 每次打开的时候url要从sharePerference里读取啊。
qq_34269851 2018-04-23
  • 打赏
  • 举报
回复
现在是进去之后页面不显示。。网址可以保存上也可以跳转。但是打开页面不显示
qq_34269851 2018-04-23
  • 打赏
  • 举报
回复
怎么读取。。。。@键盘舞者13
键盘舞者113 2018-04-21
  • 打赏
  • 举报
回复
那是因为你虽然存了地址,但每次打开应用都不读取


import android.app.ProgressDialog;
import android.content.Context;
import android.content.SharedPreferences;
import android.preference.Preference;
import android.preference.PreferenceManager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.example.zth.myapplication.R;


public class MainActivity extends AppCompatActivity {

    private String url;
    private ProgressDialog dialog;
    private WebView webView;
    private EditText editText;
    private Button save;
    private Button go;
    private SharedPreferences sharedPreferences;
    private SharedPreferences.Editor editor;
    //private String web;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        init();
        //Log.e("web========","asda");
    }
    private void init() {
        webView = (WebView) findViewById(R.id.web);
        editText = (EditText) findViewById(R.id.text);
        save = (Button) findViewById(R.id.btn);
        go=(Button)findViewById(R.id.btn1);

        //webView.loadUrl("http://www.baidu.com");
        //获取SharedPreferences对象
        Context context=MainActivity.this;
        sharedPreferences=context.getSharedPreferences("MY_PRE",MODE_PRIVATE);
        editor=sharedPreferences.edit();
        editText.setText(sharedPreferences.getString("web",""));

        save.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String web=editText.getText().toString();
                url=web;
                editor.putString("web",url);
                editor.commit();

                Toast.makeText(MainActivity.this,"SUCCESS", Toast.LENGTH_SHORT).show();
            }
        });



            String str = sharedPreferences.getString("web", "");
            if (str == "") {
                str = "http://www.baidu.com";
            }
        url = str;
        webView.loadUrl(url);


        //editText.setText(webView.getUrl());
        go.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String str = editText.getText().toString();
                url = "http://" + str;
                webView.loadUrl(url);
            }
        });
        webView.setWebViewClient(new WebViewClient() {
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
            }
        });
        //启用支持javaScript
        WebSettings webSettings = webView.getSettings();
        webSettings.setJavaScriptEnabled(true);
        //webview加载页面优先使用缓存加载
        webSettings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
        //editText.setText(webView.getUrl());
//        webView.setWebChromeClient(new WebChromeClient(){
//            @Override
//           public void onProgressChanged(WebView view, int newProgress) {
//         //newProgress 1-100之间的整数
//          if (newProgress == 100) {
//        //网页加载完毕,关闭ProgressDialog
//              closeDialo();
//          } else {
//              //网页正在加载,打开ProgressDialog
//              openDialog(newProgress);
//              editText.setText(webView.getUrl()); //实时显示当前网址
//              editText.requestFocus();           //把输入焦点放在调用这个方法的控件上
//              editText.setSelectAllOnFocus(true); //点击之后就被全选
//          }
//            }
//            private void closeDialo() {
//                if (dialog != null && dialog.isShowing()) {
//                    dialog.dismiss();
//                    dialog = null;
//                }
//            }
//
//            private void openDialog(int newProgress) {
//                if (dialog == null) {
//                    dialog = new ProgressDialog(MainActivity.this);
//                    dialog.setTitle("加载中...");
//                    dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
//                    dialog.setProgress(newProgress);
//                    dialog.show();
//                } else {
//                    dialog.setProgress(newProgress);
//                }
//            }
//        });
    }
//    @Override //改写物理按键——返回的逻辑
//    public boolean onKeyDown(int keyCode, KeyEvent event) {
//        if(keyCode == KeyEvent.KEYCODE_BACK){
//            if(webView.canGoBack()){
//                webView.goBack();   //返回上一页面
//                return true;
//            }else {
//                System.exit(0);
//            }
//        }
//        return super.onKeyDown(keyCode,event);
//    }

}

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧