【问题标题】:How to control the gradient on a shape?如何控制形状的渐变?
【发布时间】:2012-12-17 17:48:27
【问题描述】:

我有一个顶部带有标签的屏幕。这个标签是用 TextView 完成的。 作为背景,我想要一个垂直渐变,从 color1 开始,更改为 color2 并返回到 color1。 目前我有:

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

    <stroke android:width="1px" android:color="#000000" /> 
    <gradient
        android:startColor="#FFFFFFFF"
        android:centerColor="#FF8800"
        android:endColor="#FFFFFFFF" 
        android:type="linear"
        android:angle="270" 
/>
    <corners android:radius="10dp"/>
</shape>

我的问题是 centerColor 线太细了。我希望它占据所有字母空间。 我找不到任何使渐变更快的方法。 我已经尝试过使用布局列表,但没有成功。

有什么想法吗?

【问题讨论】:

    标签: android background textview gradient shape


    【解决方案1】:

    这是一个更加不同的轨道,但您是否考虑过使用 9-patch 图像文件?这将允许您拉伸您希望的渐变部分,并通过正确分割背景使中心线尽可能大。

    以下是我用来了解它们的一些很棒的教程: draw 9 patch tutorial

    从 Google 自己的 Android 口中: Android 9 patch All Drawable resources for Android

    【讨论】:

    • 我一直在看这个 9patch 的东西,但我无法掌握它。渐变真的不行吗?
    • 它适用于垂直或水平渐变,但我认为不适用于倾斜渐变。你能详细解释一下你在学习 9patches 时遇到的问题吗?
    • 我似乎无法正确展开它。我选择了中心线,但它在图片的下方展开。意思是我松开了较低的渐变。
    • 更多信息:原始文件(来自 eclipse 的打印屏幕):dl.dropbox.com/u/3501880/bg.png 9patch 上的更改:dl.dropbox.com/u/3501880/9patch.png eclipse 上的结果:dl.dropbox.com/u/3501880/layout.png
    • 我的 AndroidManifest 上的异常是一件愚蠢的事情。我更改了一些路径,但忘记更改清单。它现在正在工作。谢谢。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多