Android: ارسم قوسًا داخل Canvas api بلون تعبئة متدرج
-
27-10-2019 - |
سؤال
أريد رسم قوس باستخدام قماش باستخدام تعبئة متدرجة.كيف يمكن تحقيق ذلك؟
المحلول
مرحبًا ، لقد سرقت هذا من هنا: ارسم قوسًا باستخدام SweepGradientفي Android
لكنها تعمل بشكل جيد ، لقد استخدمت LinearGradient بدلاً من ذلك. Genacodicetagpre
نصائح أخرى
في قضيتي كان علي أن أرسم شخصًا مثل هذا:
ربما أنت أيضًا
لذا دعنا نفكر! كيف يعمل التدرج اللوني المسح؟ إذا قمت برسم مستقيم عبر هذا:
Genacodicetagpre سيكون:
لذا فإن الفكرة هي تدويرها! Genacodicetagpre
أخيرًا يمكننا رسم قوسنا: Genacodicetagpre
شاهد كود مصدر العرض المخصص على github مستودع .
يمكنك أيضًا استخدام مجموعة من الألوان والمواضع المتغيرة. على سبيل المثال ، حدد 10 ألوان ، واحد لكل 10٪ تقدم: Genacodicetagpre
ضع كل هذه الألوان داخل مجموعة ألوان مثل هذا: Genacodicetagpre
بعد ذلك ، حدد المناصب.تمسح المواضع من 0.0 إلى 1.0 (المواضع 0.1 تقابل color_10 والموضع 0.2 إلى color_20 وما إلى ذلك) Genacodicetagpre
بمجرد تحديد المواضع ، يمكننا تعيين SweepGradient لطلاءنا Genacodicetagpre
أخيرًا يمكننا رسم قوسنا باستخدام طلاء التظليل الخاص بنا: Genacodicetagpre
التأثير النهائي في طريقة العرض المخصصة: