Отладка IBDesignable - отладка выбранных представлений не работает

Недавно я создал многоразовый класс для рендеринга IBDesignables xibs в представлении интерфейса.

@interface ReusableView ()
@property (nonatomic, strong) UIView *contentView;
@end

@implementation ReusableView

- (instancetype)initWithFrame:(CGRect)frame {
    self = [super initWithFrame:frame];
    [self setupXib];

    return self;
}

- (instancetype)initWithCoder:(NSCoder *)aDecoder {
    self = [super initWithCoder:aDecoder];
    [self setupXib];

    return self;
}

- (void)setupXib {
    self.contentView = [self loadFromNib];

    self.contentView.frame = self.bounds;
    self.contentView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

    [self addSubview:self.contentView];
}

- (UIView *)loadFromNib {
    NSBundle *bundle = [NSBundle bundleForClass: [self class]];
    UINib *nib = [UINib nibWithNibName:NSStringFromClass([self class]) bundle:bundle];
    UIView *view = (UIView *)[[nib instantiateWithOwner:self options:nil] firstObject];

    return view;
}

@end

Пока все было нормально до сегодняшнего дня. Я буквально ничего не изменил в своем коде (я даже откатился к основной ветке, чтобы быть уверенным), и мои xibs, использующие этот класс, больше не отображаются в раскадровках.

В конструкторе интерфейсов есть информация

Designables: сборка не удалась

но кнопка «Показать» ничего не делает, а также пытается использовать «Редактор»> «Отладка выбранных представлений». Я не могу попасть ни в одну точку останова в своем классе.

До сих пор я пробовал:

  • очистка производных данных
  • перезапуск x-кода
  • Убийство Инструмент Cocoa Touch Tool для создания интерфейсов
  • полный перезапуск
  • проект чистый (между ранее описанными действиями)

Это какая-то ошибка xcode или как-то это моя вина? Можно ли отлаживать Designables каким-либо другим способом, кроме как с опцией Debug Selected Views?


person Piotr Gawłowski    schedule 25.07.2016    source источник
comment
ты придумал как это сделать? Нет, наверное, это не твоя вина. Xcode - это кусок дерьма.   -  person Duck    schedule 04.04.2017
comment
У меня была точно такая же проблема в течение некоторого времени. Единственное решение, которое я нашел на сегодняшний день, - это удалить содержимое файла xib и создать его заново. В моем случае в одном из файлов xib есть конкретная метка, которая обычно является виновником. Я понятия не имею, почему он повреждается, или как определить, в каком файле xib проблема, не говоря уже о том, какое представление виновато, кроме кропотливого ручного тестирования. Это очень расстраивает.   -  person Erik    schedule 19.11.2017


Ответы (1)


Xcode теперь показывает ошибки сборки IB, если вы нажмете «Показать навигатор отчетов», а затем посмотрите раздел «Сборка интерфейса».

Ошибки сборки IB

person joels    schedule 14.02.2018