【问题标题】:Keep buttons of a UIToolbar throughout views在整个视图中保留 UIToolbar 的按钮
【发布时间】:2011-09-15 15:10:46
【问题描述】:

在第一个导航控制器中,我向 UIToolbar 添加了四个按钮。这四个按钮也有四种不同的动作。

我的问题是当我在导航堆栈中推送一个新的视图控制器时,UIToolbar 仍然可见,但四个按钮消失了。

如何保留按钮以及如何保留它们的操作而不重写代码以在我想要工具栏的每个视图中添加四个按钮和四个操作方法?

【问题讨论】:

    标签: iphone objective-c uinavigationcontroller uibutton uitoolbar


    【解决方案1】:

    创建一个单独的类来继承UIToolbar 类(换句话说,您自己的自定义工具栏类),然后在屏幕上适当位置的后续类中创建并添加这个新类的对象的实例(它的底部)。

    创建一个继承UIView 类的单独类,并向其添加按钮,使其具有与UIToolbar 相同的外观和感觉。然后创建这个新类对象的实例,并将这个对象的UIView作为子视图(使用[self.view addSubview:yourcustomViewObject.view];)添加到屏幕上的适当位置(其底部)。

    【讨论】:

    • 感谢您的回复。您认为哪种方式更好?另外,你能提供一些代码来使用第一种方法吗?我创建了一个继承 UIToolbar 的类,我应该重写它的哪些方法?
    • 由于 UIToolbar 继承自 UIView,你只需要实现 init 方法(当然还有一些自定义方法来处理按钮事件!)。我个人会选择第二种方法,因为它提供了更多的定制空间。
    • PS:我之前多次尝试过第二种方法,但我从未尝试过第一种
    • 好的,我将使用第二种方法,但两种方法都有一个问题:如何将我的自定义视图/工具栏设置为导航控制器工具栏?
    • 我认为你做不到。你想实现什么功能?
    猜你喜欢
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多