【问题标题】:Transparency issues Samsung Galaxy S3透明度问题三星 Galaxy S3
【发布时间】:2014-01-07 12:07:10
【问题描述】:

我对在 Android 中使用透明度有一个奇怪的问题。

我有一个从橙色到透明的渐变。这在我一直使用的 Nexus 5 上运行良好。

但是,我在三星 Galaxy S3 上运行该应用程序,结果很奇怪。

举个例子……

NEXUS 5(正确)

三星 GALAXY S3(错误)

这是 XML 背景可绘制对象

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:state_pressed="true"><shape>
        <gradient android:endColor="@android:color/transparent" android:gradientRadius="100" android:startColor="#ffd060" android:type="radial" />

        <stroke android:width="0dp" android:color="#ffd060" />

        <corners android:radius="200dp" />

        <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />
    </shape></item>
<item><shape>
        <solid android:color="@android:color/transparent" />

        <stroke android:width="0dp" android:color="#D1D1D1" />

        <corners android:radius="0dp" />

        <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />
    </shape></item>

有什么想法吗?

谢谢

【问题讨论】:

  • 这个问题有解决方案吗?我遇到了类似的问题。
  • 是的,这里也一样(一年多之后!),据我所知,旧的三星设备根本不处理透明度渐变,这很可惜。不知道什么是体面的解决方案。

标签: android android-drawable


【解决方案1】:

只需将渐变endColor 替换为startColor 透明

<gradient android:endColor="#00ffd060" android:gradientRadius="100" android:startColor="#ffd060" android:type="radial"/>

【讨论】:

    【解决方案2】:

    中风是为了什么?尝试删除此行:

    <stroke android:width="0dp" android:color="#D1D1D1" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-28
      • 1970-01-01
      • 1970-01-01
      • 2012-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多