developer tip

IB Designables : 자동 레이아웃 상태 업데이트 실패 : 경로에서 Designables를로드하지 못했습니다 (null).

copycodes 2020. 10. 26. 08:07
반응형

IB Designables : 자동 레이아웃 상태 업데이트 실패 : 경로에서 Designables를로드하지 못했습니다 (null).


XIB에 대해이 오류가 표시됩니다. 그러나 다른 모든 것이 컴파일되고이 오류로 인해 해를 끼치 지 않는 것 같습니다. 이것이 내가 걱정할 필요가있는 것입니까? 여기서 문제는 무엇이며 어떻게 해결해야합니까?

여기에 이미지 설명 입력

업데이트 : cocoapods를 최신 버전 (0.36.3)으로 업데이트했으며 몇 번의 컴파일에 대한 문제가 해결되었지만 오류가 반환되었으며 이제 추가 오류가 표시됩니다.

여기에 이미지 설명 입력


CocoaPods의 알려진 문제입니다. 버전 0.36.1 에서 수정되었습니다 . CocoaPods를 업데이트 한 다음 특정 코드 줄을 포드 파일에 추가하기 만하면됩니다. use_frameworks! 플랫폼 이후 : ios, '7.0'

따라서 파일은 다음과 같습니다.

platform :ios, '7.0'

use_frameworks!

/// here will be dependencies etc. ///

업데이트 됨 :

문제를 완전히 제거하기위한 전체 단계 목록 :

  • 프로젝트 닫기;
  • 터미널 앱을 엽니 다.
  • CocoaPods 자체를 ver. 0.36.1 이상;
  • 터미널에서 프로젝트 폴더로 이동하십시오.
  • 유형 : pod update;
  • xCode에서 프로젝트를 엽니 다.
  • 깨끗한 프로젝트;
  • 프로젝트를 다시 빌드하십시오.

조사와 파헤 치기를 통해이 문제를 해결할 방법이 없음을 확인할 수 있습니다.

이것은 Xcode의 버그입니다.

그게 다야. 업데이트를 기다려야합니다.

그냥 다시 시작 지금은 엑스 코드를.


이것은 나를 위해 일했습니다.

  1. 파생 된 데이터 제거 (기본 설정> 위치)
  2. Xcode 다시 시작
  3. 클린 프로젝트 (제품> 클린)

2016 년 은 xCode 7.3.1입니다.이 오류가 발생했습니다. (코코아 포드 1.0을 사용하지만 상관 없습니다)

원인 : IB에서 특수 UILabel 하위 클래스가 사용되었습니다. 종을 울리다?

우아한 솔루션 :

1 : 하위 클래스 TTTAttributedLabel 또는 FXLabel 또는 u가있는 모든 것. IB에서 사용하십시오.

2 : 서브 클래 싱 된 .h 파일에 다음 행을 추가하십시오.

#ifndef IB_DESIGNABLE
#define IB_DESIGNABLE
#endif

@class LabelFromPod;


IB_DESIGNABLE @interface YourLabel : LabelFromPod {
 ...
}

3 : 그런 다음 프로젝트를 지우고 xCode를 종료하고 다시 빌드 (일반적인 xCode 패닉 프로토콜)하면 문제가 사라질 것입니다.

업데이트 2017 xCode 8.2.1 : 모든 것이 악화되고 있습니다. (빈 VC 문제 : IB는 이러한 IB_DESIGNABLE이있는 뷰 컨트롤러에 대한 UI 요소도로드하지 않습니다. 나는 단서가 없습니다. :)


TTTAttributedLabel을 사용하여 동일한 문제에 직면했고 Andrey의 답변에 따라 문제를 해결했습니다. 빌드는 성공했지만 다른 포드 모듈 (내 경우에는 TSMessage, SVProgressHUD)의 번들 파일을로드 할 수없는 것 같습니다. 이것은 Cocoapods 블로그 게시물 에도 명시되어 있으며 번들 리소스를 mainBundle로 옮기고 싶지 않습니다 (작동하는지 확인하지 않았습니다.).

따라서 Podfile에서 TTTAttributedLabel을 제거하고 해당 오류를 제거하기 위해 소스를 직접 포함하도록 선택합니다. 이것은 저에게 효과적 이며이 문제에 대한 또 다른 답변이되기를 바랍니다.


늦을 수 있지만 초기화를 위해 이러한 코드를 추가하면이 문제가 발생했을 때 효과가있었습니다.

required override init(frame: CGRect) {
    super.init(frame: frame)
}

required init?(coder aDecoder: NSCoder) {
    super.init(coder: aDecoder)
}

끝에이 Podfile스크립트를 추가하고 pod install다시 수행 합니다.

post_install do |installer|
    installer.pods_project.build_configurations.each do |config|
        config.build_settings.delete('CODE_SIGNING_ALLOWED')
        config.build_settings.delete('CODE_SIGNING_REQUIRED')
    end
end

I had the same issue as I was using custom view from POD on storyboard.

Doing the following things fixed the issue for me

  • Add the following line (To turn the POD in dynamic framework) on pod use_frameworks!
  • Do pod update
  • Restart the Xcode

Updating cocoapods in Mac, with following command solved this issue partially for me:

sudo gem install cocoapods

Problem might be that you have used a framework or Custom UILabel class. like MarqueLabel or TTTAttributed Label. Uncomment #use_frameworks inside pod file. Run pod update. Clean and rebuild your project. This will solve your issue.


I had a similar bug, when I was using Cocoapods and was not able to use_frameworks!. I ended up by forking a framework, that uses IBDesignable and IBInspectable and removing these keywords. All customization is done programmatically:

class CardFloatingLabelTextField: SkyFloatingLabelTextField {

    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)

        self.errorMessage = nil
        self.titleFont = UIFont.systemFont(ofSize: 11)
        self.titleFormatter = { (text: String) in return text }
        self.titleColor = UIColor.channelsColorGrayFootnoteAndCaptions()
        self.selectedTitleColor = UIColor.channelsColorGrayFootnoteAndCaptions()
        self.lineColor = UIColor.channelsColorGrayContentAndLines()
        self.selectedLineColor = UIColor.channelsColorDarkBlue()
        self.lineHeight = 1
        self.selectedLineHeight = 1

    }

}

작동하고 더 이상 인터페이스 빌더에서 버그를 생성하지 않습니다. 그러나이 해결 방법을 수행해야하는 것은 유감입니다.


Podfile에있는 항목을 제거하고 소스를 직접 포함하여이 문제를 해결하십시오.

그것은 나를 위해 작동합니다!

참고 URL : https://stackoverflow.com/questions/28204108/ib-designables-failed-to-update-auto-layout-status-failed-to-load-designables

반응형