画像を背景として表示しようとすると、ビューに問題が発生します。スペース全体が使用され、線形レイアウトの2番目の子(2つのRelativeLayoutが隣り合って表示されます)が表示されません。
画像を背景として設定し、その上に他のレイアウト要素を保持するにはどうすればよいですか?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:orientation="vertical" >
<RelativeLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:paddingLeft="5dp"
Android:paddingRight="5dp" >
<ImageView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:src="@drawable/globe"
Android:layout_gravity="top"
/>
</RelativeLayout>
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:orientation="horizontal" >
<RelativeLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:paddingLeft="5dp"
Android:paddingRight="5dp" >
</RelativeLayout>
<RelativeLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:paddingLeft="5dp"
Android:paddingRight="5dp" >
</RelativeLayout>
</LinearLayout>
</LinearLayout>
少し遅いですが、私の問題は次のコードで解決されました。
ImageView
を使用して背景画像を設定し、その上に線形レイアウトを表示しました。
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:orientation="vertical" >
<ImageView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_gravity="top"
Android:contentDescription="@string/my_msg"
Android:src="@drawable/my_super_bg_image" />
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:background="@drawable/top_style"
Android:orientation="vertical" >
<RelativeLayout
Android:id="@+id/today"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:paddingLeft="5dp"
Android:paddingRight="5dp" >
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentTop="true"
Android:layout_centerHorizontal="true"
Android:text="some text here"
Android:textSize="24sp" />
</RelativeLayout>
</LinearLayout>
</FrameLayout>
誰かがもっと知る必要があるなら、私は答えを更新します。
ありがとう。
使用する Android:background
あなたのLinearLayout
ImageView
を使用する代わりに、Android:background
プロパティを使用する必要があります。