2016-05-10 25 views
9

Tôi thấy cảnh báo trình biên dịch sau khi xây dựng dự án của tôi:Cảnh báo biên dịch dữ liệu của Android: Tham chiếu phương thức sử dụng '.' bị phản

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

Tôi đang sử dụng plugin Android cho gradle 2.1.0.

file layout của tôi trông giống như sau:

<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> 

Ai đó có thể chỉ cho tôi đi đúng hướng để giải quyết cảnh báo này?

+0

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

Trả lời

9

mỗi thông báo lỗi:

cảnh báo: Phương pháp sử dụng tài liệu tham khảo '' không được chấp nhận. Thay vì 'item.onCardClicked', sử dụng 'mục :: onCardClicked'

Vì vậy, thay @{item.onCardClicked} với @{item::onCardClicked}

+0

Tài liệu Android trên Android Databinding đã không đề cập đến bất cứ điều gì về nhà điều hành phương pháp tham khảo của Java, vì vậy tôi đã do dự để áp dụng điều này. Có vẻ như đi về phía trước, đó sẽ là quy ước được sử dụng. Cảm ơn một lần nữa. – WindsurferOak

+7

Lưu ý rằng Android Studio có thể không hỗ trợ ký pháp này để bạn có thể nhận được squigglies đỏ khi chỉnh sửa tệp. –

+1

Android Studio 2.1.3 không thích ký hiệu "::" trong trình chỉnh sửa bố cục (nhưng vẫn xây dựng dự án). Android Studio 2.2.0 * vẫn * không thích "::" trong trình chỉnh sửa bố cục. ROFL !! Tôi đoán tôi sẽ sử dụng ký hiệu chấm thay vì :: vì tôi ghét thấy dấu lỗi trong một tệp - và tôi có thể bỏ qua tâm lý các cảnh báo gradle dễ dàng hơn. –

Các vấn đề liên quan