1612997fe2e41366573855f56898b27d4c8787244George Mount/* 2612997fe2e41366573855f56898b27d4c8787244George Mount * Copyright (C) 2015 The Android Open Source Project 3612997fe2e41366573855f56898b27d4c8787244George Mount * 4612997fe2e41366573855f56898b27d4c8787244George Mount * Licensed under the Apache License, Version 2.0 (the "License"); 5612997fe2e41366573855f56898b27d4c8787244George Mount * you may not use this file except in compliance with the License. 6612997fe2e41366573855f56898b27d4c8787244George Mount * You may obtain a copy of the License at 7612997fe2e41366573855f56898b27d4c8787244George Mount * 8612997fe2e41366573855f56898b27d4c8787244George Mount * http://www.apache.org/licenses/LICENSE-2.0 9612997fe2e41366573855f56898b27d4c8787244George Mount * 10612997fe2e41366573855f56898b27d4c8787244George Mount * Unless required by applicable law or agreed to in writing, software 11612997fe2e41366573855f56898b27d4c8787244George Mount * distributed under the License is distributed on an "AS IS" BASIS, 12612997fe2e41366573855f56898b27d4c8787244George Mount * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13612997fe2e41366573855f56898b27d4c8787244George Mount * See the License for the specific language governing permissions and 14612997fe2e41366573855f56898b27d4c8787244George Mount * limitations under the License. 15612997fe2e41366573855f56898b27d4c8787244George Mount */ 16fead9ca09b117136b35bc5bf137340a754f9edddGeorge Mountpackage android.databinding.adapters; 17612997fe2e41366573855f56898b27d4c8787244George Mount 18cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mountimport android.databinding.BindingAdapter; 19fead9ca09b117136b35bc5bf137340a754f9edddGeorge Mountimport android.databinding.BindingMethod; 20fead9ca09b117136b35bc5bf137340a754f9edddGeorge Mountimport android.databinding.BindingMethods; 21cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mountimport android.graphics.drawable.Drawable; 22cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mountimport android.net.Uri; 23cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mountimport android.widget.ImageView; 243561e3e665698843b1c664385a842e779198960bGeorge Mount 253561e3e665698843b1c664385a842e779198960bGeorge Mount@BindingMethods({ 26c619d8f69127c1200103d8119101c5f0675661d0George Mount @BindingMethod(type = android.widget.ImageView.class, attribute = "android:tint", method = "setImageTintList"), 27c619d8f69127c1200103d8119101c5f0675661d0George Mount @BindingMethod(type = android.widget.ImageView.class, attribute = "android:tintMode", method = "setImageTintMode"), 283561e3e665698843b1c664385a842e779198960bGeorge Mount}) 293561e3e665698843b1c664385a842e779198960bGeorge Mountpublic class ImageViewBindingAdapter { 30cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount @BindingAdapter("android:src") 31cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount public static void setImageUri(ImageView view, String imageUri) { 32cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount if (imageUri == null) { 33cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount view.setImageURI(null); 34cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount } else { 35cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount view.setImageURI(Uri.parse(imageUri)); 36cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount } 37cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount } 38612997fe2e41366573855f56898b27d4c8787244George Mount 39cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount @BindingAdapter("android:src") 40cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount public static void setImageUri(ImageView view, Uri imageUri) { 41cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount view.setImageURI(imageUri); 42cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount } 43cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount 44cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount @BindingAdapter("android:src") 45d6339f712b4b8ce04a1cb3eec9c2574f4d170990George Mount public static void setImageDrawable(ImageView view, Drawable drawable) { 46cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount view.setImageDrawable(drawable); 47cc0e609d998fa9f82d62050bea525afa3a6f92f3George Mount } 48612997fe2e41366573855f56898b27d4c8787244George Mount} 49