Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.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
Android自定义颜色选择器:使用渐变绘制三角形_Android_Gradient_Color Picker - Fatal编程技术网

Android自定义颜色选择器:使用渐变绘制三角形

Android自定义颜色选择器:使用渐变绘制三角形,android,gradient,color-picker,Android,Gradient,Color Picker,我是Android开发的新手,想创建自己的颜色选择器。因此,我想创建一个三角形,在角上使用红色、绿色、蓝色,在角之间使用其他颜色作为渐变 我在Androi中没有找到任何方法来创建这样一个具有3个原点的渐变,因此我想问你们,解决这个问题的最佳方法是什么:) (我不希望只使用图像,因为带有渐变的亮度可以调整三角形的亮度,而且解决方案应该尽可能干净和高效) 谢谢你的帮助!干杯您可以在drawable文件夹中创建如下xml文件: <?xml version="1.0" encoding="utf-

我是Android开发的新手,想创建自己的颜色选择器。因此,我想创建一个三角形,在角上使用红色、绿色、蓝色,在角之间使用其他颜色作为渐变

我在Androi中没有找到任何方法来创建这样一个具有3个原点的渐变,因此我想问你们,解决这个问题的最佳方法是什么:)

(我不希望只使用图像,因为带有渐变的亮度可以调整三角形的亮度,而且解决方案应该尽可能干净和高效)


谢谢你的帮助!干杯

您可以在drawable文件夹中创建如下xml文件:

<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:aapt="http://schemas.android.com/aapt"
    android:height="100dp"
    android:width="120dp"
    android:viewportHeight="100"
    android:viewportWidth="100">
        <path android:pathData="m 50,0 l 50,100 -100,0 z" >
            <aapt:attr name="android:fillColor">
                <gradient
                    android:endX="0"
                    android:endY="100">
                        <item android:color="#F20600" android:offset="0.1111111" />
                        <item android:color="#FF7600" android:offset="0.22222222" />
                        <item android:color="#FFD500" android:offset="0.3333333" />
                        <item android:color="#8CFE00" android:offset="0.44444444" />
                        <item android:color="#00E86C" android:offset="0.5555555" />
                        <item android:color="#00E86C" android:offset="0.6666666" />
                        <item android:color="#00CCFF" android:offset="0.77777777" />
                        <item android:color="#013CE0" android:offset="0.8888888" />
                        <item android:color="#013CE0" android:offset="0.9999999" />
                </gradient>
            </aapt:attr>
        </path>
</vector>


我将从android.graphics.ComposeShader开始,使用不同的
PorterDuff.Mode
s
 <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:id="@+id/triangle"
        android:src="@drawable/triangle"
        />