如何使UIPickerView滑动到屏幕一半的位置?

6

输入图像描述

当有人点击服装时,我希望UIPickerView像以下示例一样向上滑动:

输入图像描述

请问有人可以展示一段代码示例吗?


2
你尝试过创建一个动作表(action sheet),并将一个选择器视图(picker view)嵌入其中吗? - Jason
不,那是我第一次听说。太酷了! - Strong Like Bull
3个回答

9
根据dsc和Jason的建议,如果您正在使用tableview,请使用其委托方法didSelectRowAtIndexPath,在其中调用一个actionsheet中的pickerview。
要了解如何在actionsheet中调用pickerview,请查看此链接:Add UIPickerView & a Button in Action sheet - How?

看起来苹果即将开始执行他们的规则,即不应该将操作表视图作为子类化,因为我收到了这个错误信息 - "<Error>:CGContextSetFillColorWithColor:无效上下文0x0。这是一个严重的错误。此应用程序或其使用的库正在使用无效的上下文,从而有助于系统稳定性和可靠性的总体降级。这个通知是一种礼貌:请解决这个问题。它将在即将推出的更新中成为致命错误。" - Stu P.

7

更新
此版本已被弃用,请使用ActionSheetPicker代替。

如果您想要“滑动”效果,可以使用动画。

[pickerView setFrame: CGRectMake([[self view] frame].origin.x, [[self view] frame].origin.y + 480.0, [[self view] frame].size.width, [[self view] frame].size.height)];
[UIView beginAnimations: nil context: NULL];
[UIView setAnimationDuration: 0.25];
[UIView setAnimationCurve: UIViewAnimationCurveEaseInOut];
[pickerView setFrame: yourDesiredEndFrame];
[UIView commitAnimations];

这个代码没有经过测试,但是可以给你一个想法。


6

还有一个兼容ARC的版本可用吗? - html_programmer
1
只需浏览代码并删除所有的 release 和 autorelease 行。最多五分钟。 - James Harpe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接