2011-05-17 32 views
4

我想创建一个可以使界面如图所示的布局。 enter image description here如何将图像视图放置在其他布局的顶部,如图所示?

欢迎各界意见和建议。


添加我目前的布局:

<?xml version="1.0" encoding="utf-8"?> 

<LinearLayout android:layout_width="fill_parent" 
    android:layout_height="fill_parent" android:orientation="vertical" 
    android:id="@+id/video_panel"> 

    <RelativeLayout android:layout_width="fill_parent" 
     android:id="@+id/top_panel" android:gravity="top" 
     android:orientation="horizontal" android:alwaysDrawnWithCache="true" 
     android:layout_height="fill_parent" android:layout_gravity="top" 
     android:layout_weight="14" android:background="@drawable/top_bg1"> 

     <TextView android:layout_width="wrap_content" 
      android:layout_height="fill_parent" android:id="@+id/date" 
      android:layout_alignParentLeft="true" android:layout_alignParentTop="true" 
      android:text="@string/space" /> 

     <RelativeLayout android:layout_centerHorizontal="true" 
      android:id="@+id/button_panel" android:layout_height="fill_parent" 
      android:layout_width="wrap_content" android:gravity="center_horizontal" 
      android:layout_centerInParent="true"> 
     </RelativeLayout> 

     <TextView android:layout_height="fill_parent" 
      android:layout_width="wrap_content" android:layout_alignParentRight="true" 
      android:layout_alignParentTop="true" android:id="@+id/time" 
      android:text="@string/space" /> 
    </RelativeLayout> 

    <LinearLayout android:layout_width="fill_parent" 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_height="fill_parent" android:layout_gravity="center_horizontal" 
     android:layout_weight="4" android:id="@+id/screen"> 
    </LinearLayout> 

    <RelativeLayout android:layout_width="fill_parent" 
     android:id="@+id/bottom_panel" android:layout_height="fill_parent" 
     android:layout_gravity="bottom" android:layout_weight="13" 
     android:orientation="vertical" android:background="@drawable/bottom_bg1" 
     android:duplicateParentState="true" android:alwaysDrawnWithCache="true"> 

     <LinearLayout android:foregroundGravity="center" 
      android:id="@+id/album_art" android:layout_alignParentLeft="true" 
      android:layout_width="256dip" android:layout_height="fill_parent"> 
      <ImageView android:layout_width="fill_parent" 
       android:layout_height="fill_parent" android:layout_gravity="center" 
       android:id="@+id/thumbnail"></ImageView> 
     </LinearLayout> 

     <LinearLayout android:layout_toRightOf="@+id/album_art" 
      android:layout_height="fill_parent" android:orientation="vertical" 
      android:paddingTop="10dip" android:layout_width="wrap_content" 
      android:layout_centerHorizontal="true" android:layout_toLeftOf="@+id/status_frame" 
      android:id="@+id/info_panel"> 
     </LinearLayout> 

     <FrameLayout android:layout_width="wrap_content" 
      android:id="@+id/status_frame" android:layout_height="fill_parent" 
      android:visibility="visible" android:foregroundGravity="center" 
      android:layout_alignParentRight="true" android:paddingTop="50dip"> 
      <ImageView android:id="@+id/status" android:layout_width="fill_parent" 
       android:layout_height="fill_parent" android:scaleType="fitCenter" 
       android:layout_gravity="center" /> 
     </FrameLayout> 
    </RelativeLayout> 
</LinearLayout> 

我应该如何改变这种布局使它看起来像我的照片?

回答

1

有几种可能性,但我想我会去imageview上的一个简单的负边缘。将图像视图置于蓝色线性视图中,并将其放入android:layout_marginTop="-20dip"

这应该工作

+0

它的工作能力:-(..你可以请检阅我的布局 – Sen 2011-05-17 14:33:39

+0

在你的布局中,让蓝色组成一个水平方向的线性视图,然后作为直接的孩子放置你的imageview,你的linearlayout和你的其他imageview。然后当应用负边距时,它应该可以工作 – Yahel 2011-05-17 21:19:19

+0

我有类似的情况,垂直线性布局需要将ImageView(它是一个直接的子元素)向左移动一点点会发生什么:视图确实移动了看到它与android布局管理器),但drawable保持在同一个地方。除了drawable不会去左边,它也被切割在右边,因为ImageView被移动到了左边 – Ixx 2012-04-20 11:54:29

2

如何将framelayout更改为relativelayout。

有VideoView fill_parent,bluelayout align_parentBottom = true,线性布局horizo​​ntallayout中心水平线,alignparentbottom,蓝色图像视图align_parentleft = true,alignparentbottom为真,具有较大的底部边距以将其撞上。橙色imageview alignparentright &底部。

相关问题