全部, 我的应用程序要求我在不同的视图控制器/屏幕上使用自定义按钮。由于我不想在故事板上多次创建它们,然后多次进行任何必要的修改,我创建了一个超级类,其中包含viewdidload中的按钮,然后我在不同的视图中继承了这个类控制器。现在,我想从这些按钮执行segues。我希望它工作的方式是每个按钮都将切换到相同的控制器/视图,无论从哪里查看它的视图。现在,我知道就编程方面的segues而言,我有两个选项,performseguewithidentifier和pushviewController。我不完全确定在我的情况下哪一个会起作用?目前,我试图通过在故事板中从超类控制器创建一个segue来尝试使用performseguewithidentifier,然后编译然后当我点击按钮时我的应用程序崩溃,给我一个无法识别的选择器发送到实例异常。我无法真正使用pushviewController选项,因为这个超类控制器本身不是我的导航控制器的一部分。 知道我怎么能做我的按钮segues,以便他们继承到其他控制器?
其他一些细节是为了完全澄清情况:我的超类在故事板上确实有一个相应的视图控制器,但这不是我的导航控制器堆栈的一部分,因此没有连接到其他任何东西。我这样做的原因是因为我的超类仅用于继承按钮,它实际上没有任何其他目的。子类化的所有其他视图控制器都在故事板中,并且是导航堆栈的一部分。我为这个按钮选择这条路线的原因是因为我将它们作为我应用中每个屏幕的一部分而且我不想在故事板中多次创建它们因为那时我想做的任何改变都必须是跨越所有控制器。使用超类控制器,我只需要改变一次。我不确定如何子类化UIButton然后使用segues。这是我应该考虑的选择吗?