布局之外的边界

时间:2016-12-14 14:49:57

标签: android android-layout android-studio

我需要将border设置为linearLayout而不修改它的大小,我尝试在linearLayout的背景中设置一些带边框和填充的drawable但是这个设置在linearLayout内部并修改size,image和textView。您是否有办法在视图外设置边框或叠加视图?

我的代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/itemCarouselContainer"
    android:layout_width="@dimen/carousel_item_width"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_marginRight="@dimen/carousel_item_margin_right"
    android:orientation="vertical">

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

        <ImageView
            android:id="@+id/imageCarousel"
            android:layout_width="match_parent"
            android:layout_height="@dimen/carousel_image_poster_height"

            />

        <TextView
            android:id="@+id/live"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="@dimen/carouse_item_live_margin_left"
            android:layout_marginTop="@dimen/carousel_item_live_margin_top"
            android:padding="@dimen/carousel_item_live_padding"
            android:textColor="@color/carousel_live_text"
            android:textSize="@dimen/carousel_item_live_text_size"
            android:textStyle="bold" />
    </RelativeLayout>

    <TextView
        android:id="@+id/titleCarousel"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:background="@color/carousel_content_title_background"
        android:gravity="center"
        android:padding="7dp"
        android:singleLine="true"
        android:textColor="@color/carousel_content_title_text"
        android:textSize="@dimen/carousel_title_size" />
</LinearLayout>

1 个答案:

答案 0 :(得分:1)

将其创建为可绘制的

<shape xmlns:android="http://schemas.android.com/apk/res/android"
           android:shape="rectangle">

  <stroke
      android:width="1dp"
      android:color="@color/miniBlack"
      android:dashGap="10px"
      android:dashWidth="10px"/>
</shape>

将其设置为您的布局背景,并为其2dp padding,以便stroke赢得&#t; t覆盖内容

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/itemCarouselContainer"
    android:layout_width="@dimen/carousel_item_width"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_marginRight="@dimen/carousel_item_margin_right"
    android:orientation="vertical"
    android:background="@drawable/myfile"
    android:paddings="2dp"
 >...