2016-05-10 17 views
9

widzę następujące ostrzeżenie kompilatora podczas budowania mojego projektu:Android Databinding Compile Ostrzeżenie: odwołanie metod za pomocą "." jest przestarzała

warning: Method references using '.' is deprecated. Instead of 'item.onCardClicked', use 'item::onCardClicked'

Używam android wtyczki do Gradle 2.1.0.

Mój plik układ wygląda następująco:

<layout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools"> 

<data> 
    <variable 
     name="item" 
     type="com.example.Card"/> 
</data> 
<LinearLayout android:layout_width="match_parent" 
     android:layout_height="match_parent"> 
    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:clickable="true" 
     android:onClick="@{item.onCardClicked}"/> 
... 
</LinearLayout> 
</layout> 

Czy ktoś może wskazać mi w dobrym kierunku, aby rozwiązać to ostrzeżenie?

+0

http://stackoverflow.com/a/37393655/212706 – ktutnik

Odpowiedz

9

Per komunikatem o błędzie:

ostrzeżenie: '' referencje Metoda z zastosowaniem jest przestarzałe. Zamiast 'item.onCardClicked', stosowanie 'pozycja :: onCardClicked'

więc zastąpić @{item.onCardClicked} z @{item::onCardClicked}

+0

Android dokumentacji na Androida Databinding nie wspomniał nic o operatorze odwołującym się do metodyki Java, więc wahałem się, czy to przyjąć. Wydaje się, że idąc dalej, będzie to stosowana konwencja. Dzięki jeszcze raz. – WindsurferOak

+7

Pamiętaj, że Android Studio może nie obsługiwać tej notacji, więc podczas edytowania pliku możesz uzyskać czerwone zawijasy. –

+1

Android Studio 2.1.3 nie podobało się notacji "::" w edytorze layoutu (ale nadal budował projekt). Android Studio 2.2.0 * wciąż * nie lubi "::" w edytorze layoutu. ROFL !! Sądzę, że zamiast tego użyję notacji kropkowej: ponieważ nie cierpię widzieć znaków błędu w pliku - i mogę psychologicznie zignorować ostrzeżenia stopniowe łatwiejsze. –

Powiązane problemy