Objective c 从单独的电话和Pad故事板创建IBOutlet到自定义UIButton子类?

Objective c 从单独的电话和Pad故事板创建IBOutlet到自定义UIButton子类?,objective-c,xcode,uibutton,interface-builder,subclass,Objective C,Xcode,Uibutton,Interface Builder,Subclass,我正在尝试将连接从故事板上的一些UIButton拖到头文件中名为AGPiece的UIButton的子类。我有两个iPhone和iPad的故事板 我可以把iPhone的手机拖过来并创建新的插座(@property(强,非原子)IBOutlet AGPiece*piece1;,但现在我想将iPad情节提要链接到这些相同的代码行,我不能拖到这些代码行上,它没有突出显示,让我,它只允许我在该行的上方或下方创建一个新的。显然,如果我先创建iPad,它会创建这些代码行,而不是手机问题是拖拽到现有的代码行,而

我正在尝试将连接从故事板上的一些UIButton拖到头文件中名为
AGPiece
UIButton的子类。我有两个iPhone和iPad的故事板

我可以把iPhone的手机拖过来并创建新的插座(
@property(强,非原子)IBOutlet AGPiece*piece1;
,但现在我想将iPad情节提要链接到这些相同的代码行,我不能拖到这些代码行上,它没有突出显示,让我,它只允许我在该行的上方或下方创建一个新的。显然,如果我先创建iPad,它会创建这些代码行,而不是手机问题是拖拽到现有的代码行,而不是拖出并创建一个新的代码行。似乎Xcode需要一个
UIButton
,而不知道我的
AGPiece
继承自
UIButton


有什么方法可以解决这个问题吗?当我链接到
UIButton
实例并在头文件中写入
UIButton
时,它工作得很好,但现在我来实现自定义类,它不想与它有任何关系。

试试这个……你会注意到你的.h/.m文件的行号列中有一个项目符号,就在正确的旁边在一个视图中使用interface builder并在另一个视图中使用.h/.m文件的具有iAction或iOutlet.的绑定和方法;您可以单击该项目符号并将其拖动到要链接的按钮/属性

此外,您需要确保ViewController具有正确的“类”类型(与子类的名称匹配)

您还可以在interface builder中控制从按钮/视图到“控制器”(橙色正方形)的拖动

编辑
根据上面的评论:如果您要对按钮进行子类化,您可能需要在interface builder中将按钮的“类”设置为按钮子类类型。

您是如何创建ipad故事板的,我建议您使用此处介绍的方法: (简而言之,在finder中复制iphone情节提要文件,将目标运行时属性修改为ipad并重新启动xcode)


当你像这样创建ipad情节串连板时,它还保留了iphone情节串连板的插座连接,非常方便,为你节省了大量时间。

你确定要对UIButton进行子类化吗?该类比你想象的要复杂得多,子类化可能会导致重大问题。你最好创建一个自定义UIView子类,然后向其中添加一个没有图像的UIButton。苹果也不鼓励这样做。Fogmeister是对的。如果你这样做,你可能需要在界面生成器中将按钮的“类”设置为你的按钮子类类型。Dave,这是正确的。想写一个答案让我相信你吗?:)Fogmeister,我有一个问题:如果我按照你的建议做,我还能在Interface Builder中创建UIButtons,并通过拖动链接它们吗?或者用这种方法,我需要以编程方式创建它们并在代码中定位它们吗?请记住,项目符号已经填充,从链接到iPhone情节提要。拖动到控制器就可以了不要提供这些属性作为选项,所以这也是不可能的。我的ViewController是一个UIViewController,它不是UIButton或自定义类–不知道你说的是什么意思。我正在尝试将UIButton链接到一个AGPiece,它写在继承自UIViewController的类的.h中。我不知道这一点,下一步将尝试ime我做了一个项目:)你不需要一直转换整个情节提要,右键单击xcode中的情节提要文件,并将其作为源代码打开。它将为您提供类似html的代码,该代码由您在故事板中使用的不同ViewController分割。将特定vc的部分从iphone的文件复制到ipad。