У меня есть очень простой подкласс UITextView, который добавляет функциональность «Заполнитель», которую вы можете найти, родной для объекта Text Field. Вот мой код для подкласса:@IBDesignable error: IB Designables: Не удалось обновить статус автомакета: Интерфейс Builder Cocoa Touch Tool разбился
import UIKit
import Foundation
@IBDesignable class PlaceholderTextView: UITextView, UITextViewDelegate
{
@IBInspectable var placeholder: String = "" {
didSet {
setPlaceholderText()
}
}
private let placeholderColor: UIColor = UIColor.lightGrayColor()
private var textColorCache: UIColor!
override init(frame: CGRect) {
super.init(frame: frame)
self.delegate = self
}
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
self.delegate = self
}
func textViewDidBeginEditing(textView: UITextView) {
if textView.text == placeholder {
textView.text = ""
textView.textColor = textColorCache
}
}
func textViewDidEndEditing(textView: UITextView) {
if textView.text == "" && placeholder != "" {
setPlaceholderText()
}
}
func setPlaceholderText() {
if placeholder != "" {
if textColorCache == nil { textColorCache = self.textColor }
self.textColor = placeholderColor
self.text = placeholder
}
}
}
После изменения класса для UITextView
объекта в идентичности инспекторе PlaceholderTextView
, я могу установить Placeholder
свойства только штраф в атрибуте инспектор. Код отлично работает при запуске приложения, но не отображает текст заполнителя в построителе интерфейса. Я также получаю следующие ошибки неблокируемому (я предполагаю, что это, почему это не делает во время разработки):
error: IB Designables: Failed to update auto layout status: Interface Builder Cocoa Touch Tool crashed
error: IB Designables: Failed to render instance of PlaceholderTextView: Rendering the view took longer than 200 ms. Your drawing code may suffer from slow performance.
Я не в состоянии выяснить, что является причиной этих ошибок. Вторая ошибка не имеет никакого смысла, поскольку я даже не переопределяю drawRect(). Есть идеи?
я получаю эту ошибку. Объект отлично работал в тестовом проекте, но не в моем основном проекте (в таблице). Согласно https://developer.apple.com/library/mac/recipes/xcode_help-IB_objects_media/Chapters/DebuggingCustomViews.html#//apple_ref/doc/uid/TP40014224-CH42-SW1, я выбрал «Выбрать редактор»> «Отладка выбранных представлений» , Затем я получил «Не удалось отладить просмотры» «Убедитесь, что ваша инфраструктура имеет правильные настройки сборки для iOS». Ошибка Google в этой ошибке. – Matt