【发布时间】:2012-05-26 06:34:12
【问题描述】:
如何绘制一个简单的 BAR?
像这样:
谢谢。
【问题讨论】:
-
为了帮助您,我们需要知道您希望绘制哪种“栏” - 工具栏、进度条、滑块?
标签: objective-c ios xcode uitableview
如何绘制一个简单的 BAR?
像这样:
谢谢。
【问题讨论】:
标签: objective-c ios xcode uitableview
您需要制作一个 UIToolbar,将其放在 XIB 的底部,并在其上放置一些按钮。现在,这将默认为您提供一个具有标准黑色光泽的常规黑条。如果您想拥有自定义图像,有两种解决方案。
First 只是 UIToolbar 的子类并覆盖它的 drawRect 以绘制自定义图像。覆盖 drawRect 的代码如下所示:
//in some other code somewhere, preferably on init
self.image = [UIImage imageNamed: @"image"];
- (void)drawRect:(CGRect)rect {
[self.image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}
现在,在 iOS 5.0 中有 very useful called appearance,但您必须愿意只针对 5.x+ iOS 版本。
第二种比较简单,但是通用性较差,就是简单的在XIB底部贴一个UIImageView,在上面放一些按钮。这比上面的要容易得多,但可扩展性较差,更难修改,并且 在 iOS 中不受欢迎 有充分的理由 - 它违反了一般的 iOS 约定(你会输一些非常有用的功能)。
【讨论】:
Crimson 有一个好主意,但由于他/她的回答需要使用 UIToolbar,我将提供一个替代方案:
基本上你所显示的是某种进度条,所以最终你想要显示的内容应该是 UIControl 的子类,甚至更好,UIProgressView 或 UISlider。
Google 四处寻找自定义进度视图指示器或滑块。 There arealso good examplesavailable hereon Stackoverflow.
【讨论】: