Tôi đang sử dụng Studio 3.3.1 Build từ ngày 28 tháng 1.
Đối với tôi, tôi đã nhận được "lỗi liên kết tài nguyên android không thành công" chỉ đến một dòng trong tệp bố cục sử dụng ConstraintLayout đã hoạt động bình thường cho đến hôm nay khi thay đổi duy nhất đối với tệp gradle cấp ứng dụng của tôi là cập nhật các phiên bản của:
android.arch.navigation:navigation-fragment
android.arch.navigation:navigation-ui
từ 1.0.0-rc01
đến 1.0.0-rc02
.
Thông báo lỗi cho biết điều gì đó về việc không nhận dạng được layout_constraintTop_toTopOf
tất nhiên là ngớ ngẩn vì nó đã được biên dịch khá vui vẻ trong nhiều tháng.
Tôi đã sử dụng 28.0.3 các công cụ xây dựng và compileSdkVersion
28. Tôi đã sử dụngandroidx.appcompat
ở khắp mọi nơi trong một thời gian (đã chuyển đổi dự án này vài tháng trở lại androidx).
Lần đầu tiên tôi trải qua một dự án sạch (không trợ giúp) và vô hiệu hóa bộ nhớ cache / khởi động lại (không trợ giúp). Bố cục được đề cập ban đầu đã được xác định bằng cách sử dụng
<TextView>
, <EditText>
Và <ImageView>
các thành phần (mà đã làm việc tốt cho đến ngày nay).
Nhưng sau khi đọc các câu trả lời ở trên, tôi nghĩ có lẽ bằng cách nào đó đã có sự nhầm lẫn được gây ra ở đây vì vậy tôi đã thay đổi bố cục để sử dụng:
<androidx.appcompat.widget
phiên bản của tất cả các thành phần khác nhau. Không thay đổi - vẫn bị lỗi.
Sau đó, tôi đã xóa <androidx.appcompat.widget.AppCompatTextView
khối gây ra lỗi biên dịch. Tôi đã thay đổi tất cả các tham chiếu đến nó trong các widget khác để tham chiếu đến "cha" thay thế. Đã làm một. Lần này biên dịch hoàn thành mà không có lỗi .
Vì vậy, một cái gì đó kỳ lạ trong định nghĩa widget đó tôi nghĩ .... đây là những gì nó đã được:
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/contact_firstname_label"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="@string/contact_fname_label"
android:gravity="end"
android:textAppearance="@android:style/TextAppearance.Material.Small"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toLeftOf="@+id/contact_detail_fname"
app:layout_constraintBaseline_toBaselineOf="@+id/contact_detail_fname"/>
Sau đó, tôi dán lại khối mà tôi đã cắt Ctrl-V trước đó và thay đổi các tham chiếu trở lại ID đó trong các thành phần khác tham chiếu nó trong bố cục. Biên dịch không thành công .
Tôi cắt khối một lần nữa và dán nó vào WordPad. Sau đó, đọc từ WordPad paste, tôi thực sự đã nhập lại nó (tức là lần này tôi không sao chép / dán) - từng dòng một, thực hiện dự án sau khi tôi gõ vào định nghĩa tối thiểu, và sau đó lặp lại khi tôi đưa vào mỗi dòng mới. Mỗi lần dự án được biên dịch sạch sẽ!
Tôi không biết phải làm gì với điều này. Có lẽ ban đầu một nhân vật vô hình giả nào đó có trong tập tin?