2014-04-05 58 views
3

在我的android應用程序中,我只需要四個角落的邊框,如圖(白色)所示。Android:邊框只在角落

enter image description here

<RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="0dip" 
     android:layout_weight="6"> 
     <VideoView 
      android:id="@+id/video1" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_gravity="center" /> 
     <View 
      android:layout_width="150dp" 
      android:layout_height="150dp" 
      android:layout_centerInParent="true" 
      android:background="@drawable/cornerbg" /> 
    </RelativeLayout> 

cornerbg.xml

 <?xml version="1.0" encoding="utf-8"?> 
     <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 

     <item> 
      <shape android:shape="rectangle" > 
       <solid android:color="@color/transparent" /> 
       <stroke 
        android:width="1dp" 
        android:color="@color/btn_border" 
        android:dashWidth="50dp" // I tried this but not getting expected 
        android:dashGap="60dp"/> 

      </shape> 
     </item> 
     </layer-list> 

我如何編寫XML的呢?

請幫幫忙,謝謝

+0

你需要這些可見的角落,在裏面的照片或作爲邊界? –

+1

創建該四角圖像的9.png,並將其放置在圖像的佈局前面 –

+0

@fremmedehenvendelser在邊框內。但我可以管理它,我不會將它寫入xml。我將用axml和xml更新我的問題 –

回答

0

不幸的是,我不相信我用來完成這會爲需要透明背景的視圖的工作方法,但它應該在所有其他情況下工作。使用下面的代碼簡單地創建一個可繪製的資源,並將其設置爲您希望具有「僅轉角」邊框的任何視圖的背景。

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item> 
     <shape android:shape="rectangle"> 
      <solid android:color="@android:color/white" /> 
     </shape> 
    </item> 
    <item 
     android:left="10dp" 
     android:right="10dp"> 
     <shape android:shape="rectangle"> 
      <solid android:color="@android:color/black" /> 
     </shape> 
    </item> 
    <item 
     android:top="10dp" 
     android:bottom="10dp"> 
     <shape android:shape="rectangle"> 
      <solid android:color="@android:color/black" /> 
     </shape> 
    </item> 
    <item 
     android:left="2dp" 
     android:right="2dp" 
     android:bottom="2dp" 
     android:top="2dp"> 
     <shape android:shape="rectangle"> 
      <solid android:color="@android:color/black" /> 
     </shape> 
    </item> 
</layer-list> 
0

我知道這是很久以前的問題,但我有同樣的問題。

我解決了創建二次佈局和包括在我的主佈局。

我希望這個解決方案可以幫助別人。

main_layout.xml

<RelativeLayout 
    android:layout_width="fill_parent" 
    android:layout_height="0dip" 
    android:layout_weight="6"> 

    <VideoView 
     android:id="@+id/video1" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_gravity="center" /> 

    <include layout="@layout/camera_box_layout" /> 

</RelativeLayout> 

camera_box_layout.xml

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_margin="40dp" 
    android:background="@android:color/transparent"> 

    <!-- Top horizzontal lines --> 
    <View 
     android:layout_width="100dp" 
     android:layout_height="2dp" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentStart="true" 
     android:background="@android:color/darker_gray" /> 

    <View 
     android:layout_width="100dp" 
     android:layout_height="2dp" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentEnd="true" 
     android:background="@android:color/darker_gray" /> 

    <!-- Top vertical lines --> 
    <View 
     android:layout_width="2dp" 
     android:layout_height="100dp" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentStart="true" 
     android:background="@android:color/darker_gray" /> 

    <View 
     android:layout_width="2dp" 
     android:layout_height="100dp" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentEnd="true" 
     android:background="@android:color/darker_gray" /> 

    <!-- Bottom horizzontal lines --> 
    <View 
     android:layout_width="100dp" 
     android:layout_height="2dp" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentStart="true" 
     android:background="@android:color/darker_gray" /> 

    <View 
     android:layout_width="100dp" 
     android:layout_height="2dp" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentEnd="true" 
     android:background="@android:color/darker_gray" /> 

    <!-- Bottom vertical lines --> 
    <View 
     android:layout_width="2dp" 
     android:layout_height="100dp" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentStart="true" 
     android:background="@android:color/darker_gray" /> 

    <View 
     android:layout_width="2dp" 
     android:layout_height="100dp" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentEnd="true" 
     android:background="@android:color/darker_gray" /> 
</RelativeLayout>