1

奇妙な問題があります。

私は ImageView を持っており、この ImageView は WebView です。この WebView は ImageView と同じ大きさで、その背景は透明であるため、WebView によってテキストのみが表示されます。

私のGalaxy Nexusでは、これは完全に機能します。しかし、私の Sony Xperia では、WebView は画像の上下を揃えません。左右の配置は問題ありません

しかし、なぜこれはこのようなものですか?

ここに私のxmlコードがあります:

 <ImageView
    android:id="@+id/ImageView02"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/textView1"
    android:layout_centerHorizontal="true"
    android:src="@drawable/product_pic_background" />

<RelativeLayout
    android:id="@+id/contain"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignBottom="@+id/ImageView02"
    android:layout_alignLeft="@+id/ImageView02"
    android:layout_alignRight="@+id/ImageView02"
    android:layout_alignTop="@+id/ImageView02"
    android:orientation="vertical"
    android:paddingBottom="15dp"
    android:paddingLeft="15dp"
    android:paddingRight="15dp"
    android:paddingTop="50dp" >

    <WebView
        android:id="@+id/produkttext"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_centerInParent="true"
        android:layout_alignParentStart="true"           
        android:longClickable="false"
        android:scrollbars="vertical" />
</RelativeLayout>

エクスペリアアーク。 どうあってはならない

ギャラクシーネクサス。 それがどうあるべきか

1.Xperiaアーク。2.Galaxy Nexus。それがどうあるべきか

4

1 に答える 1

2

要件が整ったら、これに対する 1 つの解決策を示します。

<RelativeLayout
    android:id="@+id/contain"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingBottom="15dip"
    android:paddingLeft="15dip"
    android:paddingRight="15dip"
    android:paddingTop="50dip" >

    <WebView
        android:id="@+id/produkttext"
        android:longClickable="false"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_centerHorizontal="true"
        android:background="@+drawable/product_pic_background"
        android:scrollbars="vertical" />
</RelativeLayout>

次に、コードで:

WebView web = (WebView) findViewById(R.id.produkttext);
web.setBackgroundColor(0);
BitmapDrawable bd=(BitmapDrawable) this.getResources().getDrawable(R.drawable.product_pic_background);
RelativeLayout rl = (RelativeLayout) findViewById(R.id.yourId);
rl.getLayoutParams().height = bd.getBitmap().getHeight();
rl.getLayoutParams().width = bd.getBitmap().getWidth();

これによりWebView透明になるため、背景画像が表示され、幅と高さで親レイアウトが一致します。次に、RelativeLayout画像のドローアブルのサイズが設定されます。私はそれをテストすることができませんでした (現時点ではできません) が、これが機能しない場合は、このコメントを削除します (そして、おそらくハラキリをコミットします :-))。

于 2013-07-12T15:01:25.627 に答える