1

次のような UI を備えたアプリを作成したい..画面に 2 つの webview を追加したい..webview2 をクリックすると、webview1 が非表示になり、webview2 が全画面表示になります...2 つの webview の読み込み URL が「http:/ /www.google.com" の場合、2 つの webview が別々に表示されますが、"http://www.google.com" を "http://www.youtube.com" として別の URL を読み込むと、1 つの webview youtube のみが表示されます。フルスクリーン..私がしなければならない方法..ありがとう

ファイル XML は次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >      
    <LinearLayout
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:id="@+id/layout1" 
        android:layout_weight="1"
    >
    <WebView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/webview1"
    />
    </LinearLayout>     
    <LinearLayout
    android:layout_weight="4"                   
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:id="@+id/layout2" 
        android:layout_marginLeft="10dip"           
    >
    <WebView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/webview2"          
    />
    </LinearLayout>

アクティビティのコードは次のとおりです。

    DisplayMetrics displaymetrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
    height = displaymetrics.heightPixels;
    width = displaymetrics.widthPixels;        
    layout1=(LinearLayout)findViewById(R.id.layout1);
    layout2=(LinearLayout)findViewById(R.id.layout2);
    webview1=(WebView)findViewById(R.id.webview1);        
    webview1.loadUrl("http://www.google.com");
    webview2=(WebView)findViewById(R.id.webview2);
    webview2.loadUrl("http://www.google.com");
    final LayoutParams lp=webview1.getLayoutParams();
    final LayoutParams lp1=webview2.getLayoutParams();                        
    lp.height=height;        
    lp1.height=height;

    webview1.setLayoutParams(lp);
    webview2.setLayoutParams(lp1);

    webview2.setOnClickListener(new OnClickListener() {

        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            webview1.setVisibility(View.GONE);
            lp.height=height; 
            lp.width=width;
            webview2.setLayoutParams(lp);
        }
    });
4

1 に答える 1

0

2 つのカスタム WebView を作成することをお勧めします。

WebView wv1 = findViewById(ID_WEBVIEW_1);

WebView wv2 = findViewById(ID_WEBVIEW_2);

if (wv1.getUrl() != "http://google.com" || wv2.getUrl() != "http://google.com") {

      ((ViewManager)entry.getParent()).removeView(entry);

}

http://developer.android.com/reference/android/view/ViewManager.html

于 2012-07-17T22:21:41.507 に答える