2011-11-13 8 views
0

webviewとカスタムホームページに問題があります。ユーザーが設定ページでURLを入力するようにしたいので、自動的にwebviewのホームページになります。このアクティビティのユーザーでhttp://developer.android.com/reference/android/preference/PreferenceActivity.html できるようになります - ここでWebViewカスタムホームページ

は私のあるpreferences.xmlここ

<?xml version="1.0" encoding="utf-8"?> 
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> 
    <PreferenceCategory 
    android:title="URL" 
    android:key="URL_CAT"> 
    <EditTextPreference 
     android:key="URL_HERE" 
     android:title="School/Uni URL" 
     android:summary="Your School's Homepage" 
     android:dialogTitle="Moodle URL" 
     android:dialogMessage="Type your school's URL for a shortcut." 
     android:defaultValue="http://" /> 
    </PreferenceCategory> 
</PreferenceScreen> 

は私WebActivity.java

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    this.getWindow().requestFeature(Window.FEATURE_PROGRESS); 
    setContentView(R.layout.webview); 
    WebView webView = (WebView) findViewById(R.id.webview); 
    webView.getSettings().setJavaScriptEnabled(true); 
    webView.getSettings().setSupportZoom(true); 
    webView.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR); 
    webView.setWebChromeClient(new WebChromeClient() { 


     public void onProgressChanged(WebView view, int progress) 
     { 
      activity.setTitle("Loading..."); 
      activity.setProgress(progress * 100); 

     } 

    }); 

    webView.setWebViewClient(new WebViewClient() { 
     @Override 
     public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) 
     { 

     } 

     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) 
     { 
      view.loadUrl(url); 
      return true; 
     } 
    }); 

    webView.loadUrl("http://test.com"); <--- I need the user data here 
} 

答えて

0

まずあなたがPreferenceActivityを延長する活動が作成すべきですURLを入力します。 WebActivityで

は、コードに

SharedPreferences prefs = getSharedPreferences(); 
try { 
    url = prefs.getString(KEY, defaultValue).toString(); 
} catch (ClassCastException e) { 
    e.printStackTrace(); 
} 
を追加します
関連する問題