0

こんにちは、listview onclick load webview を使用していますが、これは正常に機能します。

私の問題は、onclickリストビューの前です。デフォルトのWebページを使用してWebビューにロードしますが、これは機能していません...

これが私のコードです

webview=(WebView)app.findViewById(R.id.webView);
webview.loadUrl("http://google.com");//this is my default webview before onclick the list view

上記のデフォルトの URL が読み込まれていません...

ListView listView = (ListView) menu.findViewById(R.id.list);
initListView(listView);
public  void initListView(final ListView listView) {
    // By using setAdpater method in listview we an add string array in list.
    ArrayList<ItemDetails> image_details = GetSearchResults();
    listView.setAdapter(new ItemListBaseAdapter(this, image_details));

    listView.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> a, View v, int position, long id) { 
            Object o = listView.getItemAtPosition(position);
            ItemDetails obj_itemDetails = (ItemDetails)o;
            String msg =obj_itemDetails.getName();
              try{
            if(null!=webview){
                webview.removeAllViews();
              }
            if(msg.equalsIgnoreCase("a")){
                 webview.loadUrl("http://example.com");
            }else if(msg.equalsIgnoreCase("b")){
                 webview.loadUrl("http://example.com");
            }else if(msg.equalsIgnoreCase("c")){
                 webview.loadUrl("http://example.com");
            }else if(msg.equalsIgnoreCase("d")){
                 webview.loadUrl("http://e.com");
            }else if(msg.equalsIgnoreCase("e")){
                 webview.loadUrl("http://f.com");
            }else{
                 webview.loadUrl("http://example.com");
            }


          }catch (Exception e) {
            Toast.makeText(HorzScrollWithListMenu.this,e.toString(),Toast.LENGTH_LONG).show();
            e.printStackTrace(System.out);

            }

        }  
    });

}

私のonCreateコードセクション

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

    LayoutInflater inflater = LayoutInflater.from(this);
    scrollView = (MyHorizontalScrollView)   inflater.inflate(R.layout.horz_scroll_with_list_menu, null);
    setContentView(scrollView);

    menu = inflater.inflate(R.layout.horz_scroll_menu, null);
    app = inflater.inflate(R.layout.horz_scroll_app, null);
    webview=(WebView)app.findViewById(R.id.webView);
    webview.loadUrl("http://google.com");

私のコードで何が問題なのか教えてください。

4

2 に答える 2

0

私はこれがあなたを助けると思います

webView = (WebView) app.findViewById(R.id.webView1);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.loadUrl("http://www.google.com")

また、マニフェスト ファイルにこのアクセス許可を追加することを忘れないでください。

 <uses-permission android:name="android.permission.INTERNET" />

または、WebViewClientを使用します。

web.setWebViewClient(new myWebClient());
web.getSettings().setJavaScriptEnabled(true);
web.loadUrl("http://www.google.com");


 public class myWebClient extends WebViewClient
    {
     @Override
     public void onPageStarted(WebView view, String url, Bitmap favicon) {
      // TODO Auto-generated method stub
      super.onPageStarted(view, url, favicon);
     }

     @Override
     public boolean shouldOverrideUrlLoading(WebView view, String url) {
      // TODO Auto-generated method stub

      view.loadUrl(url);
      return true;

     }

     @Override
     public void onPageFinished(WebView view, String url) {
      // TODO Auto-generated method stub
      super.onPageFinished(view, url);

      progressBar.setVisibility(View.GONE);
     }
    }
于 2012-10-03T08:10:10.747 に答える
0

これらのプロパティを webView で設定してみてください

webview.clearCache(true);
webview.getSettings().setJavaScriptEnabled(true);

ここで動作するWebビューの基本的な理解を深めるために、このチュートリアルに従ってみてください

于 2012-10-03T08:12:17.920 に答える