我在这个舍入的LinearLayout中有一些imageview。这是我的简单代码:
<LinearLayout
android:layout_width="128dp"
android:layout_height="128dp"
android:id="@+id/point_image_table1"
android:orientation="vertical"
android:drawable="@drawable/image_view_style"
android:layout_below="@+id/repoint_p_name"
android:weightSum="4">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:scaleType="centerCrop"
android:id="@+id/imageView61"
android:layout_marginBottom="1dp"
android:src="@color/realRed"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:id="@+id/imageView71"
android:layout_marginRight="1dp"
android:layout_marginEnd="1dp"
android:scaleType="centerCrop"
android:src="@drawable/pinpoint_logo_large"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:id="@+id/imageView51"
android:scaleType="centerCrop"
android:src="@drawable/pinpoint_logo_large"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_marginLeft="1dp"
android:layout_marginStart="1dp"
android:scaleType="centerCrop"
android:id="@+id/imageView81"
android:src="@drawable/pinpoint_logo_large"/>
</LinearLayout>
但是如果LinearLayout没有看到,则图像角覆盖了LinearLayout角,最后是边框
我该怎么解决?我需要将一些imageview设置为线性布局,我还需要将border和round corner设置为linearlayout。
感谢。
答案 0 :(得分:3)
我建议你使用带有多个图像的cardview,很容易获得拼贴视图,试试这种方式
<android.support.v7.widget.CardView
android:layout_width="300dp"
android:layout_height="300dp"
android:layout_marginTop="10dp"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
card_view:cardCornerRadius="10dp">
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="300dp"
android:layout_height="300dp">
<LinearLayout
android:id="@+id/left_container"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_width="150dp"
android:layout_height="300dp"
android:orientation="vertical">
<ImageView
android:id="@+id/dog"
android:layout_width="150dp"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@drawable/mmm" />
<ImageView
android:id="@+id/bottom_left_image"
android:layout_width="150dp"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_marginTop="5dp"
android:background="@drawable/mmm" />
</LinearLayout>
<LinearLayout
android:id="@+id/right_container"
android:layout_width="150dp"
android:layout_height="300dp"
android:layout_marginLeft="5dp"
android:layout_toRightOf="@+id/left_container"
android:orientation="vertical">
<ImageView
android:id="@+id/top_right_image"
android:layout_width="150dp"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@drawable/mmm" />
<ImageView
android:id="@+id/bottom_right_image"
android:layout_width="50dp"
android:layout_height="0dp"
android:layout_weight="0"
android:background="@drawable/mmm" />
</LinearLayout>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/transparent"/>
</RelativeLayout>
</android.support.v7.widget.CardView>
OUPUT
答案 1 :(得分:2)
您可以在drawable文件夹中创建XML文件。调用它,例如,shape.xml
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<solid
android:color="#888888" >
</solid>
<stroke
android:width="2dp"
android:color="#C4CDE0" >
</stroke>
<padding
android:left="5dp"
android:top="5dp"
android:right="5dp"
android:bottom="5dp" >
</padding>
<corners
android:radius="11dp" >
</corners>
设置LinearLayout
<LinearLayout
android:layout_width="128dp"
android:layout_height="128dp"
android:id="@+id/point_image_table1"
android:orientation="vertical"
android:drawable="@drawable/image_view_style"
android:layout_below="@+id/repoint_p_name"
android:weightSum="4">
</LinearLayout>
希望这会有所帮助......
答案 2 :(得分:1)
首先,您要创建一个简单的drawable并使用此代码。您可以根据自己的选择更改宽度或笔触和颜色。半径也可以简化为android:radius = dpValue。
?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#ffffffff"/>
<stroke android:width="3dp"
android:color="#ff000000"/>
<corners android:bottomRightRadius="7dp" android:bottomLeftRadius="7dp"
android:topLeftRadius="7dp" android:topRightRadius="7dp"/>
</shape>
创建完成后,您可以将其指定为imageView的背景:
android:background="@drawable/yourDrawableName"
我可能会尝试将图片视图设为wrap_content。您还应该尝试在图像视图的高度上设置0dp。
希望这有帮助。