khi tôi tải ứng dụng của mình, nó sẽ hiển thị một thông báo cảnh báo rằng
"Không thể tải hình ảnh" "được tham chiếu từ một ngòi trong gói có số nhận dạng"
Tôi đã tìm kiếm và xác nhận tất cả hình ảnh của mình. Nhưng nó vẫn cho thấy cảnh báo đó.
khi tôi tải ứng dụng của mình, nó sẽ hiển thị một thông báo cảnh báo rằng
"Không thể tải hình ảnh" "được tham chiếu từ một ngòi trong gói có số nhận dạng"
Tôi đã tìm kiếm và xác nhận tất cả hình ảnh của mình. Nhưng nó vẫn cho thấy cảnh báo đó.
Câu trả lời:
Tôi đã có cùng một vấn đề khi tôi Refactor to Storyboard
. Rõ ràng danh mục Nội dung không chuyển tham chiếu hình ảnh. Để khắc phục, hãy xem bên dưới:
Bạn sẽ nhận thấy rằng của bạn ImageViews
trống từ tham chiếu.
1 - Nhấp vào ImageView
2 Đi tới thanh Tiện ích nơi bạn sẽ thấy hình ảnh nội dung của mình
unknown
3 - Đổi lại thành nội dung hình ảnh của bạn
Điều này sẽ sửa chữa lỗi của bạn. Hi vọng điêu nay co ich!
Có thể có nhiều lý do của lỗi này. Để khắc phục sự cố này, bạn chỉ cần làm theo bước dưới đây:
Vui lòng tham khảo hình ảnh bên dưới để hiểu rõ hơn:
Chỉ cần chọn hình ảnh trong Xcode và ở phía bên phải, Trình kiểm tra tệp, trong 'Tư cách thành viên mục tiêu' đảm bảo rằng dự án của bạn được chọn. Một điều khác bạn có thể làm là xóa và chèn lại hình ảnh của bạn và đảm bảo rằng 'Sao chép các mục nếu cần' được chọn và 'Thêm vào mục tiêu' dự án của bạn được chọn.
Ghi chú phát hành Xcode9 beta2:
Nội dung jpeg trong danh mục nội dung không được tìm thấy trên iOS 10 trở xuống đối với các ứng dụng được xây dựng bằng Xcode 9. Các cuộc gọi API để truy cập hình ảnh như UIImage.imageNamed: return nil. (32524123)
Giải pháp: Sử dụng tài nguyên png hoặc giới hạn thử nghiệm ứng dụng cho các thiết bị chạy iOS 11 trở lên.
Ghi chú phát hành Xcode9 beta3:
Nội dung jpeg trong danh mục nội dung được tìm thấy trên iOS 10 trở xuống cho các ứng dụng được xây dựng bằng Xcode 9. (32524123)
Bạn có thể thử mở bảng phân cảnh hoặc nib của mình dưới dạng Mã nguồn và sau đó "Tìm" tên hình ảnh trong đó, xem nó có tồn tại nhưng đã không hợp lệ trong dự án của bạn hay không, có thể bạn đã xóa hoặc thay đổi tên của nó và bây giờ nó có vẻ không hợp lệ .
image="name"
hoặc image name="name"
. Tôi vừa gặp lỗi này cho một hình ảnh có tên "đầu tiên" và mã phân cảnh có rất nhiều firstAttribute
, ..: p
Tôi vừa cập nhật lên XCode 9 và nó bắt đầu gây ra cho tôi vấn đề này. Tôi đã tạo một Bộ Hình ảnh mới trong phần Nội dung và thêm các hình ảnh tôi muốn vào phần này, sau đó thêm lại chúng vào các hình ảnh trên thanh tab của tôi với tên tùy chỉnh và nó hoạt động tốt. Hi vọng điêu nay co ich!
VẤN ĐỀ
Điều này xảy ra với tôi dường như bất ngờ trên bộ điều khiển thanh tab với các biểu tượng cho mỗi tab. Bảng phân cảnh vẫn hiển thị các biểu tượng hình ảnh của tôi và nội dung tồn tại với các tên dự kiến.
KHẮC PHỤC CỦA TÔI
Chọn các biểu tượng thanh tab trong bộ điều khiển chế độ xem tương ứng của chúng và gán lại hình ảnh như bạn đã làm lần đầu tiên.
Điều này cũng xảy ra với tôi. Tôi đã làm mọi thứ đúng khi thêm hình ảnh nhưng vì lý do nào đó mà nó không hoạt động. Tôi phải nhấp lại vào hình ảnh đã thêm một lần nữa, và sau đó trên thanh công cụ bên phải trong "Tư cách thành viên mục tiêu", tôi nhận thấy dự án của mình chưa được chọn mặc dù tôi đã chọn nó khi thêm hình ảnh. Tôi đã chọn nó ở đây và mọi thứ đều hoạt động tốt.
Tôi nhận được thông báo lỗi tương tự (trong XCode 8), mặc dù ứng dụng chạy tốt (trong trình mô phỏng và trên thiết bị).
Tôi phát hiện ra vấn đề: Trong bảng phân cảnh của mình, bằng cách sử dụng ngăn phác thảo tài liệu, tôi nhấp qua từng Hình ảnh UII và xem xét trình kiểm tra thuộc tính cho từng Hình ảnh - trong phần Xem Hình ảnh - nhận thấy rằng một Hình ảnh UII có tên tệp trống (thay vì tên tệp .png có chứa hình ảnh). Chọn lại tên tệp .png từ hộp thả xuống đã khắc phục thông báo lỗi.
Trường hợp của tôi hơi khác. Tôi đang sử dụng một IBDesignable
phần tử cũ có một số thuộc tính thiết lập hình ảnh trực tiếp từ bảng phân cảnh. Vì phần tử đó đã cũ, bị ẩn và không sử dụng nên các hình ảnh mà nó có không có trong thư mục nội dung của tôi.
Bây giờ Xcode sẽ không thể tìm kiếm hình ảnh này vì nó không có trong dự án nữa. Nhưng nếu bạn tìm kiếm trong công cụ tìm kiếm, bên trong dự án của mình, bạn sẽ tìm thấy thứ XIB/Storyboard
mà nó được đề cập. Từ đó, bạn có thể tìm nó theo cách thủ công bằng cách mở XIB hoặc Storyboard đó dưới dạng mã nguồn và tìm kiếm. Sau khi tìm thấy, hãy thay thế chúng bằng một hình ảnh mới hoặc loại bỏ phần tử không sử dụng.
Đối với những người gặp lỗi này trong khi phát triển một kén
Tôi đang cố gắng sử dụng một hình ảnh từ gói nhóm của mình, bên trong tệp .xcassets, trong bảng phân cảnh. Nó sẽ hiển thị tốt trong bảng phân cảnh nhưng khi tôi chạy ứng dụng, nó sẽ bị lỗi nói rằng nó không thể tìm thấy tài nguyên.
Tôi đã thay đổi podspec của mình để bao gồm s.resources
cũng nhưs.resource_bundles
s.resource_bundles = {
'SDKRes' => ['SDK/Assets/*']
}
s.resources = ['SDK/Assets/*.{xcassets}']
Sau đó, nó có thể tải tài nguyên đúng cách từ bảng phân cảnh
Tôi đoán là bạn có một hình ảnh trong Project Setting->Build Phases->Copy Bundle Resources
đó bị mất tham chiếu và xuất hiện với màu chữ Đỏ. Xóa hình ảnh này khỏi đó và thêm lại.
Điều này thường xảy ra do phải di chuyển lại tệp hình ảnh sau khi thêm vào dự án, nơi hình ảnh được thêm làm tham chiếu thay vì bản sao.
Có thể điều này có thể khắc phục sự cố của bạn.
Urughhh. Tôi đã cố gắng khắc phục điều này bằng tất cả các giải pháp trên, nhưng không có gì hiệu quả. Những gì cuối cùng đã hoạt động là:
Dựa trên những gì @hstdt đã đăng ở trên, tôi nghĩ rằng tôi nên kiểm tra xem hình ảnh của mình có phải là loại tệp không có bất kỳ lỗi nào liên quan đến nó hay không. ( https://stackoverflow.com/a/44558948/6804257 )
Tôi đã sử dụng a .gif
. Tôi đã loại bỏ hình ảnh đó và thay vào đó sử dụng a .png
. Bây giờ nó hoạt động.
Có cùng một vấn đề và không có câu trả lời nào trong số này phù hợp với tôi. Thay vào đó, tôi khởi động lại mac và iPhone mà tôi đang làm việc và sau đó mọi thứ bắt đầu hoạt động tốt trở lại. 🤷♂️
Trường hợp của tôi là sự khác biệt. Tôi có thêm một thư mục tài sản. Vì vậy, tôi đã thêm vào một trong những sai. Chỉ cần loại bỏ và thêm vào bên phải.