在活动转换之间保存搜索栏进度

时间:2015-02-12 13:30:20

标签: android seekbar

我有一个webview,想要使用搜索栏增加webview内容的字体大小。

我想在恢复/后退/暂停转换之间保存搜索栏进度的值。

下面是我使用sharedpreferences编写的代码。但是没有用。

LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                View layout = inflater.inflate(R.layout.font_size, (ViewGroup) findViewById(R.id.seekBar1));
                AlertDialog.Builder builder = new  AlertDialog.Builder(this)
                .setTitle("Set Font Size")
                .setView(layout)
                .setPositiveButton("Set",
                        new DialogInterface.OnClickListener(){

                            public void onClick(DialogInterface dialog,
                                    int which) {    
                                prefs = getSharedPreferences("FontSize", 0);

                                SharedPreferences.Editor editor = prefs.edit();
                                //---save the values in the EditText view to preferences---                
                                editor.putInt("fontSize", yourDialogSeekBar.getProgress());  
                                //editor.putString(TEXT_VALUE_KEY, editText.getText().toString());

                                editor.commit();       
                                /*Toast.makeText(getBaseContext(), 
                                    "Font size saved successfully!", 
                                    Toast.LENGTH_SHORT).show();*/
                            }
                });

                AlertDialog alertDialog = builder.create();
                alertDialog.show();

               yourDialogSeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
               int p=0;

                        public void onProgressChanged(SeekBar seekBar,
                                int progress, boolean fromUser) {
                            p = progress;
                            yourDialogSeekBar.setMax(200);
                            wvBrowser.getSettings().setTextZoom(p);

                        }

                        public void onStartTrackingTouch(SeekBar seekBar) {
                            // TODO Auto-generated method stub

                        }

                        public void onStopTrackingTouch(SeekBar seekBar) {
                            // TODO Auto-generated method stub
                            if (p < 30) {
                                p = 30;
                                yourDialogSeekBar.setProgress(p);

                            }

                        }

                    });

@Override 
protected void onResume() {
    super.onResume();
    prefs = getSharedPreferences("FontSize", 0);
    int size = prefs.getInt("fontSize", 12);
    wvBrowser.getSettings().setTextZoom(size);
 }

提前致谢..

1 个答案:

答案 0 :(得分:0)

我对questin的看法是,搜索栏值可能超过浏览器缩放所需的值。您搜索栏的最大设置最大值为200.此外,您应设置webView.getSettings().setSupportZoom(true)

你也可以尝试webView.getSettings().setTextZoom(int)