2016-09-29 60 views
0

這可能是一個愚蠢的問題,但我一直在尋找幾個小時,但沒有得出任何結論我應該怎麼做。在圖像上應用colorFilter

在某些網站和應用圖像上應用了圖像的黑色濾鏡。我的問題是,我應該如何生成此過濾器並將其應用於運行時的圖像上。我知道這是用某種方式使用setColorFilter,但我不知道如何。如果有人能指引我走向正確的方向,那就是我所需要的。謝謝

示例圖像過濾器:

enter image description here

+0

我使用'背景'值'#30000000'放置'ImageView'的視圖。 – betorcs

+0

@betorcs你是怎麼做到的? framelayout?圖像的高度和寬度怎麼樣 – AndroidGenius

回答

1

這是一個示例如何使用做到這一點。

<RelativeLayout 
     android:clickable="true" 
     android:foreground="?attr/selectableItemBackground" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <!-- Here, you can implement your own imageview as you want --> 
     <my.package.ui.widget.ScaleImageView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:scaleType="matrix" 
      android:adjustViewBounds="true" 
      app:error="@{@drawable/image_broken}" 
      app:imageUrl="@{item.imageUrl}" 
      app:placeholder="@{@drawable/image_holder}" /> 

     <View 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="#30000000" /> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" 
      android:layout_centerHorizontal="true" 
      android:layout_marginLeft="8dp" 
      android:layout_marginRight="8dp" 
      android:layout_marginBottom="40dp" 
      android:ellipsize="end" 
      android:lines="1" 
      android:shadowColor="#111" 
      android:shadowDx="1" 
      android:shadowDy="1" 
      android:shadowRadius="1" 
      android:text="@{item.title}" 
      android:textColor="#fff" 
      style="@style/TextAppearance.AppCompat.Title" 
      tools:text="It's Image Caption" /> 

    </RelativeLayout> 
+0

使用'FrameLayout'也適用。 – betorcs

+0

謝謝。有想法:) – AndroidGenius

+0

你真的需要使用ScaledImageView嗎?你不能簡單地給你的RelativeLayout一個背景圖片嗎? –