mam*_*mcx 5 iphone interface objective-c
我想在工具栏中显示一个完整内容.我把UILabel放在工具栏的顶部.
但是,当我运行应用程序时,UILabel完全不可见(但可以在代码上设置值).
最奇怪的是,在其他形式,所有工作都很好.我不明白为什么在一种形式的工作,而不是在另一种形式......
怎么解决这个问题?或者为什么会发生这种情况?
Cor*_*oyd 21
不要使用UILabel.
使用UIBarButtonItem.然后将其设置为样式:plain.它看起来像一个标签,但它实际上是无边框按钮.这是在条形图上显示文本的一般做法.
您还可以在代码中使用自定义视图创建UIBarButtonItem.您可以在UIBarButtonItem中简单地"包装"UILabel,从而允许您向工具栏添加任何内容.
要添加以回应评论:
无论哪种方式,您都会使按钮"处于非活动状态"并且不响应触摸.即使它是一个按钮,它似乎也不是一个按钮.这就是Apple希望将工具/导航栏添加视图的方式,以便"将事物放在其上".它违反了没有HIG指南,恰恰相反,它是一种推荐的设计技术.
要停止发光:以编程方式创建按钮,确保它已禁用,将其添加到栏中,然后应禁用它,但不能变暗.