2015-12-21 56 views
6

我想在我的项目设置compileSdkVersion至23,并且还更新了以下库:Canot解决android.support.v7.internal.widget.TintImageView

  • com.android.support:appcompat-v7:23.1.1
  • com.android.support:recyclerview-v7:23.1.1
  • com.android.support:cardview-v7:23.1.1

此后我在导入时出错android.support.v7.internal.widget.TintImageView

任何人都可以告诉我为什么这样吗? TintImageView包中的任何更改?请帮助。

我使用Studio的预览2.0

+0

为什么呢?你有没有在包名中看到'internal'? – pskink

+0

我不明白。 “内部”是什么意思? –

+0

编译SDK版本为22时工作正常。 –

回答

12

它发生,因为该类

android.support.v7.internal.widget.TintImageView 

不会在程序兼容性v 23.x.x存在。

一般不要使用internal包中的类。

您可以检查文件夹中的源androidsdk\extras\android\m2repository\com\android\support\appcompat-v7\

您应该切换到AppCompatImageView

一个ImageView的支持在旧版本的平台兼容的功能,包括:

  • 允许通过在ViewCompat背景色调方法是动态色调背景。
  • 允许使用backgroundTint和backgroundTintMode设置背景色调。

当您在布局中使用ImageView时,会自动使用此功能。编写自定义视图时,您只需手动使用此类。

0

用这个着色的ImageView

<android.support.v7.widget.AppCompatImageView 
     android:id="@id/imageview" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/my_image" 
     android:tint="#636363" 
    /> 
相关问题