Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android圆角布局,带有填充平铺图像_Java_Android_Xml_Android Layout_Layout - Fatal编程技术网

Java Android圆角布局,带有填充平铺图像

Java Android圆角布局,带有填充平铺图像,java,android,xml,android-layout,layout,Java,Android,Xml,Android Layout,Layout,我希望有一个xml解决方案来解决这个问题。。。我试图创建一个具有圆角的布局,然后用图像填充该布局(平铺,重复)。所以基本上我有一个线性布局,有一个可绘制的分层列表分配给背景。以下是测试布局(xml): 以下是测试可绘制xml: <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <it

我希望有一个xml解决方案来解决这个问题。。。我试图创建一个具有圆角的布局,然后用图像填充该布局(平铺,重复)。所以基本上我有一个线性布局,有一个可绘制的分层列表分配给背景。以下是测试布局(xml):


以下是测试可绘制xml:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item ><bitmap android:src="@drawable/my_tiled_image" android:tileMode="repeat"/></item>
    <item >
        <shape xmlns:android="http://schemas.android.com/apk/res/android" >     
            <stroke android:width="3dip" android:color="#B1BCBE" />
            <corners android:radius="20dip"/>   
        </shape>
    </item>
</layer-list>

图像在形状/布局边框的拐角处溢出。我得到以下信息


正如你所看到的,角落里的水都溢出来了。我听说过在代码中修改图像部分(蓝色图案),但我对此有问题,因为我确实修改了它并在过程中设置了动画。因此,如果它在所有可能的只是填写该图像的布局,请让我知道。谢谢大家的帮助。

您只能通过编程来完成此操作。但是,如果您想使用xml来实现这一点,您必须在相对布局和设置边距的帮助下,在圆角布局上方的布局中添加背景图像。这不会给出完美的解决方案,但会解决您的问题

第一种是XML方式 在相应的可绘制文件夹中为圆形边框创建xml文件。 我把它命名为popupOrder.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#FFFFFF" />
<stroke android:width="2dp" />
<corners android:radius="15dip" />
</shape>


The main layout
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_margin="10dp"
android:background="@drawable/popupborder" >

<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="15dp" >

<LinearLayout
    android:id="@+id/property_details"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Inner view with Background and margin"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="#000000" />
</LinearLayout>
</RelativeLayout>

主要布局

我建议您使用图像加载器库,如通用图像加载器、毕加索等。下面是一个示例代码:

String url = "file://" + your_file_path
com.nostra13.universalimageloader.core.ImageLoader.getInstance().displayImage(url, ivPicture, options);
你必须加上

.displayer(new RoundedBitmapDisplayer(px))
到您的通用图像加载器显示选项

还有另一个图书馆(我想这就是你要找的)

你可以检查一下。但在第二种方法中,由于加载大尺寸图像,您可能会出现“内存不足异常”


我希望这对你有帮助。

谢谢。您是否碰巧有此实现的代码/引用?xml和programatic两个版本?以您在问题中发布的图像为例。圆形布局在您提供背景的布局下。我在上面的示例中颠倒了这个过程。对不起,但是我对您的主布局做了什么?我要在布局中的何处添加它?另外,我不知道您在哪里使用了popupOrder.xml抱歉..在发布答案时出现了一些错误..现在可以了抱歉,在希望答案正确之前,我已经准备好了这个表格。重新访问后,此解决方案不起作用。
.displayer(new RoundedBitmapDisplayer(px))