2015-12-21 10 views
6

Próbowałem ustawić compileSdkVersion w moim projekcie do 23, a także zaktualizowane poniższych bibliotek:Canot rozwiązać 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

Od tego czasu pojawia się błąd podczas importowania android.support.v7.internal.widget.TintImageView

Czy ktoś może mi powiedzieć, dlaczego tak się dzieje? Jakiekolwiek zmiany w pakiecie TintImageView? Uprzejma pomoc.

Używam Studio Preview 2,0

+0

dlaczego? czy widziałeś 'internal' w nazwie pakietu? – pskink

+0

Nie rozumiem. Co oznacza "wewnętrzny"? –

+0

To działało poprawnie, gdy wersja SDK kompilacji była 22. –

Odpowiedz

12

Zdarza ponieważ klasa

android.support.v7.internal.widget.TintImageView 

nie istnieje w AppCompat v 23.x.x.

Ogólnie nie należy używać klas w pakiecie internal.

Możesz sprawdzić źródło w folderze androidsdk\extras\android\m2repository\com\android\support\appcompat-v7\.

Należy przełączyć na AppCompatImageView.

ImageView który obsługuje kompatybilne funkcje na starszej wersji platformy, w tym:

  • Umożliwia dynamiczne odcień tła z nim za pośrednictwem metod tło Odcień w ViewCompat.
  • Umożliwia ustawienie odcienia tła za pomocą backgroundTint i backgroundTintMode.

To zostanie automatycznie użyte podczas korzystania z ImageView w układach. Powinieneś tylko ręcznie używać tej klasy podczas pisania widoków niestandardowych.

0

Służy do barwienia 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" 
    />