【问题标题】:How to programmatically change tint color of imageView? [duplicate]如何以编程方式更改 imageView 的色调颜色? [复制]
【发布时间】:2018-01-31 14:05:21
【问题描述】:
 <ImageView
     android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:src="@drawable/star_icon"
      android:id="+@starid"/>

我需要以编程方式更改图标的色调来帮助我

【问题讨论】:

标签: android


【解决方案1】:

试试这个,

imageViewDone.setColorFilter(ContextCompat.getColor(context, R.color.yourcolor), android.graphics.PorterDuff.Mode.MULTIPLY);

【讨论】:

    【解决方案2】:

    使用

    imageView.setColorFilter(int color, PorterDuff.Mode mode) 
    

    imageView.setColorFilter(int color)
    

    参考:https://developer.android.com/reference/android/widget/ImageView.html#setColorFilter(int)

    【讨论】:

      【解决方案3】:

      您可以使用滤色镜

        imageView.setColorFilter(ContextCompat.getColor(mContext, R.color.CHOICE_COLOUR), android.graphics.PorterDuff.Mode.MULTIPLY);
      

      【讨论】:

        【解决方案4】:

        如果你想为 imagevview 使用默认的 Duff 模式,你可以更喜欢

        imageView.setColorFilter(int color)
        

        但如果您想将浅色等颜色更改为多种颜色或深色,那么您应该使用:

        imageView.setColorFilter(int color, PorterDuff.Mode mode) 
        

        【讨论】:

          【解决方案5】:

          感谢哈迪克,orginal answer

          您可以通过以下方式在代码中轻松更改色调:

          imageView.setColorFilter(Color.argb(255, 255, 255, 255));
          

          如果你想要颜色,那么:

          imageView.setColorFilter(ContextCompat.getColor(context,
          R.color.COLOR_YOUR_COLOR));
          

          带模式:

          imageView.setColorFilter(ContextCompat.getColor(context,
          R.color.COLOR_YOUR_COLOR), android.graphics.PorterDuff.Mode.MULTIPLY);
          

          就我而言:

          imgBottomDivider.setColorFilter(ContextCompat.getColor(getContext(),
                      mPreferences.isNightMode() ? R.color.colorWhite : R.color.colorBlack));
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2015-04-02
            • 2012-07-07
            • 2016-07-03
            • 1970-01-01
            • 1970-01-01
            • 2015-12-06
            • 2021-03-31
            相关资源
            最近更新 更多