2011-05-19 5 views
0

私は現時点でタブレットを心配していません。私はあなたが私が開発するために使用するLG電話に行くようにいくつかのお金を持っています。私はVideoViewWebViewのフレームレイアウトを持っています。タブレットを除くすべてのデバイスでこのレイアウトを実現する方法

私のXMLファイルでは、特定のピクセルで幅と高さが定義されており、私の1台のデバイスでテストしても問題ありません。私は大きな画面を持っていた別のデバイスでそれを試してみました。

画面の上半分をビデオで、下半分を画像で埋める方法が不思議でした。私はlayout_widthmatch_parentとしようとしましたが、高さを定義する方法がわかりませんでした。ここでは、すべてのデバイスで達成したいレイアウトです。

ss

と私のlayout.xml明らか

<?xml version="1.0" encoding="UTF-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@drawable/mobile_vforum_bg" 
    > 
    <VideoView 
     android:id="@+id/vidPlayer" 
     android:layout_width="320px" 
     android:layout_height="240px"> 
    </VideoView> 
    <WebView 
     android:id="@+id/slideHolder" 
     android:layout_width="320px" 
     android:layout_height="240px" 
     android:layout_gravity="bottom"> 
    </WebView> 
</FrameLayout> 

私はここピクセル量を使用するカントので、私のオプションは何ですか?ありがとう、私の質問が十分にはっきりしたことを願っています

答えて

1

なぜFrameLayoutを使用していますか?ビューをオーバーレイしたいときに使用します。この場合、orientation = "vertical"のシンプルなLinearLayoutがそのトリックを行います。

+0

私はかなり確かに私はFrameLayoutを使用する必要があります。 VideoViewとWebViewの両方の上にあるListViewを削除しました。これはメニューボタンで開きます。私はそれが問題に関連しているとは思わなかったので削除しましたが、明らかに間違っていました。それで、私はビューを重ねていると思います。 – Ronnie

+0

私は答えを見つけたと思う。私は同じレイアウトを保っていましたが、 '320px'ではなく' 320dip'でした。それはすべての異なる解像度で問題を解決するようです。 – Ronnie

+1

これはすべての携帯電話でうまくいきません。 FrameLayoutが必要な場合は、これらの2つのアイテムをFrameLayout内のLinearLayout内に配置するだけです。 –

2

垂直線形レイアウトを使用し、両方のビューにlayout_weight="1"を指定します。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@drawable/mobile_vforum_bg"> 
    <VideoView 
     android:id="@+id/vidPlayer" 
     android:layout_weight="1" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 
    </VideoView> 
    <WebView 
     android:id="@+id/slideHolder" 
     android:layout_weight="1" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
    </WebView> 
</LinearLayout> 
関連する問題