我想做的是在相对布局上带有渐变和灰色底边框,我在应用程序中使用以下自定义视图:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/list_item_container"
android:layout_width="match_parent"
android:layout_height="wrap_content" >

<ImageView 
    android:id="@+id/list_item_image"
    android:layout_width="match_parent"
    android:layout_height="@dimen/SIZE_LIST_ITEM_LARGE"
    android:scaleType="centerCrop"/>

<View
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/shape_list_item_gradient" />

<com.rahil.widgets.CustomTextView 
    android:id="@+id/list_item_title"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="5dp"
    android:paddingRight="5dp"
    android:paddingTop="5dp"
    android:paddingBottom="5dp"
    android:gravity="bottom"

    android:textColor="@color/COLOR_BLACK"/>

</RelativeLayout>

这是shape_list_item_gradient:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <shape android:shape="rectangle">
        <gradient
            android:startColor="#FFFFFFFF"
            android:endColor="#00FFFFFF"
            android:angle="90" />
    </shape>
</item>
<item android:bottom="2dp">
    <shape android:shape="rectangle">
        <stroke android:width="2dp" android:color="@color/COLOR_GRAY" />
    </shape>
</item> 
</layer-list>

但是上面的代码将边框应用于所有边框,而不仅仅是底部边框。 我将单独的形状xml添加到relativelayout中,但是它不起作用,我认为带有渐变的视图可能覆盖了它? 我安静地迷路了。 谢谢你的帮助。

===============>>#1 票数:1 已采纳

android:bottom属性实际上是“像素底部偏移”,如此有关layer-list可绘制对象所述。 没有明确的方法来创建仅在一侧进行描边的矩形。

但是,您可以使用Krylez在此处建议的相同技巧: https : //stackoverflow.com/a/19239478/1538674

所以像这样:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle">
            <gradient
                android:startColor="#FFFFFFFF"
                android:endColor="#00FFFFFF"
                android:angle="90" />
        </shape>
    </item>
    <item android:top="-3dp" android:right="-3dp" android:left="-3dp">
        <shape>
            <solid android:color="@android:color/transparent" />
            <stroke android:width="2dp" android:color="@color/COLOR_GRAY" />
        </shape>
    </item>
</layer-list>

  ask by arash moeen translate from so

未解决问题?本站智能推荐:

1回复

Android中RelativeLayout的自定义背景色不起作用

我在使用自定义背景色作为RelativeLayout时无法解决问题。 当我使用原色(如RED)时,不会发生此问题。 任何指针将不胜感激。 我在这里粘贴我的视图详细信息。 这可能没有任何意义,因为由此地图不可见。 但是请忽略这一点。 我关心的是背景色。 什么有效:
2回复

Android-具有需要构造函数的自定义视图的FrameLayout

我正在尝试做的是在RelativeLayout中获取一个自定义视图(这是一个构造函数和onDraw方法)和一组控件,并在FrameLayout中将它们一起显示。 目前,我的代码添加了叠加层,并由于Null Pointer Execption而崩溃,但是如果我直接添加叠加层并切出FrameLay
2回复

Android布局自定义

我开始在Android开发中,我仍然有一些布局问题。 这是我想要的渲染: 渲染http://img4.hostingpics.net/pics/682064help.png 我做了这个,但我真的不明白我怎么做这种类型的布局。 这是我的xml:
2回复

Android垂直ScrollView根本不起作用

我一直被困在这个问题上,调整了android:layout_height/width很多,但是我似乎看不出为什么它不起作用。 我查找了更多类似我的问题,但这些问题似乎对我没有用。 XML :
2回复

android:layout_alignParentEnd在API 14上不起作用

这是我的布局的相对布局部分: 在具有api 19的avd上,它完美运行。 Textview位于相对布局的左端,而imageview位于右侧。 但是在具有api 14的avd中,两者都在左端。 我错过了一些标签为alighparentend工作,或者它只是不能在api 14上工作?
1回复

在RelativeLayout中对齐时,自定义视图消失

我有一个自定义视图,可以简单地在画布上绘制一个圆圈(到目前为止)。 在RelativeLayout中使用它很好,直到我明确告诉它在RelativeLayout中要对齐的位置为止。 即,一旦我添加类似的东西:android:layout_centerInParent =“ true”,它将
1回复

除了XML布局,如何以其他方式绘制自定义视图装饰?

下面是我使用下面的代码创建的图形。 但是,我打算将其与布局文件一起使用多次。 有谁知道最好的方法是删除线性布局,同时保持该图形的外观不变,并使视图数保持最少? 使用线性布局的主要好处是可以使用布局权重将矩形均匀地间隔开,但是不幸的是,当删除线性布局并且必须对相对布局进行回复时,似乎没有
2回复

在弹出窗口中打开时,Android自定义布局损坏

因此,我做了一个自定义布局,我想在用户单击图标时在弹出窗口中使用。 这是我的布局: 这是我的xml: 但是,当我单击我的图标时,我的布局被破坏了,图标也没有对齐。 最终结果如下所示: 有什么特殊原因吗? 编辑 :我如何启动弹出窗口:
1回复

当我缩放或移动自定义RelativeLayout时,按钮在Android中没有响应

我使用Custom RelativeLayout是因为我想缩放比例并旋转该布局中存在的所有视图。 这些功能正常运行,但是问题是当我在布局中插入按钮并在屏幕上移动布局时,该按钮没有响应,但其原始位置或初始位置发生了响应。 有人可以告诉我我在哪里做错了。 请帮忙。 这是Custom Re
1回复

内容插入自定义可绘制缩放

我有一个ListView,其中包含一个在relativeLayout中定义的自定义项,其中包含一个带有android:layout_width="match_parent"和android:layout_height="wrap_content"以及一个自定义向量drawable作为源,其示意图