Ich habe eine UIButton Swift-Unterklasse CustomButton
und ich möchte Obj-C einen vorangestellten Namen verfügbar machen.Kann eine UI-Klasse mit verschiedenen Obj-C- und Swift-Namen im Storyboard verwendet werden?
@objc(PrefixCustomButton) public class CustomButton: UIButton { ... }
Diese Klasse existiert in einer Swift-Modul CustomModule
. Ich integriere dieses Modul über Cocoapods in Objective-C und Swift-Apps, um CustomButton
zu testen. Wenn ich versuche, CustomButton
von Storyboard zu verwenden, erhalte ich folgende Fehlermeldung:
Unknown class _TtC9CustomModule17CustomButton in Interface Builder file.
Ich habe auch versucht PrefixCustomButton in der Storyboard und erhalten die gleichen Fehler mit:
Unknown class _TtC9CustomModule22PrefixCustomButton in Interface Builder file.
Edit: @ matt ist korrekt, PrefixCustomButton
muss im Storyboard verwendet werden (für Swift- und Obj-C-Projekte). Der zusätzliche Teil, den ich vermisste, war, dass ich den Modulnamen nicht einstellen musste.
'@objc (PräfixCustomButton) CustomButton: UIButton {...}' Das ist nicht Swift. Vielleicht meinst du '@objc (PrefixCustomButton) Klasse CustomButton: UIButton {...}' – matt
Yup entschuldigen Sie, redigieren Sie! – faarwa