0

次の XML があります。

<string-array name="bookmark_titles">
    <item>Google</item>
    <item>Android</item>
    <item>Offspot</item>
</string-array>

<string-array name="bookmark_urls">
    <item>http://www.google.com</item>
    <item>http://www.android.com/</item>
    <item>http://www.offspot.com</item>
</string-array>

および別のファイル内のこの ListView:

<ListView
    android:id="@+id/favoritos_listView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:divider="#ECECEC"
    android:dividerHeight="1sp" />

ウェビエフ

WebView wv = (WebView) findViewById(R.id.webview);

これは私がListViewを実装する方法です

    ArrayAdapter<CharSequence> aa = ArrayAdapter.createFromResource(this, R.array.bookmark_titles, android.R.layout.simple_list_item_1);
    lv.setAdapter(aa);

ListView で項目をクリックしたときに WebView を呼び出すにはどうすればよいですか?

4

3 に答える 3

0

同じアクティビティの場合

WebView lWebView = (WebView)MyLayout.findViewById(R.id.webView);
    lWebView.setVisibility(View.GONE);//you can use View.INVISIBLE also if you need to keep the space
    String[] lTestArray =  = getResources().getStringArray(R.array. bookmark_urls);
    listView.setOnItemClickListener(new OnItemClickListener(){
                public void onItemClick(AdapterView<?> parent, View view, int position, long id){
                    lWebView.setVisibility(View.VISIBLE); //Show the webview
                    lWebView.loadUrl(lTestArray[position]);
                }
            });

別のアクティビティListView クラスを編集する

listView.setOnItemClickListener(new OnItemClickListener(){
                public void onItemClick(AdapterView<?> parent, View view, int position, long id){
                    Intent intent=new Intent(this,YOURCLASS.class);
                    intent.putExtra("Link",lTestArray[position]);
                    startActivity(intent);
                }
            });

WebView クラス

  Bundle bundle=getIntent().getExtras();
    String link=bundle.getString("Link",null);
    if(!link.equals(null)){
    WebView lWebView = (WebView)MyLayout.findViewById(R.id.webView);
    lWebView.loadUrl(link);

}
于 2012-10-25T15:21:01.217 に答える
0

を実装して、好きなようOnItemClickListenerに設定します。ListView

listView.setOnItemClickListener(new OnItemClickListener() {
  onItemClick(AdapterView<?> parent, View view, int position, long id) {
    String url = getContext().getResources().getStringArray(R.array.bookmark_urls)[position];
    //opens the url in one of the Android Browsers.
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setData(Uri.parse(url));
    getContext().startActivity(intent);
  }
}
于 2012-10-25T15:05:47.397 に答える
0

WebView の名前は何ですか?

まず、webview への参照が必要です。

WebView mWebView = (WebView)MyLayout.findViewById(R.id.webView1);

次に、リストビューには、リストビュー項目をクリックしたときに何をするかを決定する itemOnClick メソッドが必要です

    //Show webview
        lv.setOnItemClickListener(new OnItemClickListener(){
            public void onItemClick(AdapterView<?> parent, View view, int position, long id){
                mWebView.setVisibility(View.VISIBLE); //Show the webview
                mWebView.refreshDrawableState();
                mWebView.loadUrl("www.google.com");
            }
        });

クリックしたアイテムから特定のデータが必要な場合は、位置変数を使用して取得します - lv.getItemAtPosition(position)

これがあなたを助けたなら、賛成票を投じてください!:)

于 2012-10-25T15:08:08.760 に答える