如何在按下按钮后以动画方式显示 UIPickerView?

2024-03-20

我想在按下按钮后为 UIPickerView 制作动画。我已经将 UIPickerView 编码为隐藏在 viewDidLoad 上,并且在按下按钮后不会隐藏,但它的动画效果不像 ModalViewController 默认情况下的动画效果。我只希望我的 UIPickerView 能够像 ModalViewController 默认动画一样进行动画处理。

我已经在网站和网络上进行了研究,但我似乎无法正确完成。

这是我的代码:

#pragma mark - Picker View 

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
    return 1;
}

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
    return 4;
}

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
    timersArray = [[NSMutableArray alloc] init];
    [timersArray addObject:@"No timer"];
    [timersArray addObject:@"15 seconds"];
    [timersArray addObject:@"30 seconds"];
    [timersArray addObject:@"60 seconds"];

    return [timersArray objectAtIndex:row];
}

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
    if ([[timersArray objectAtIndex:row] isEqual:@"No timer"])
    {
        timerIndication.text = @"No timer selected";
        timersPickerView.hidden = YES;
        // Animation code to dismiss picker should go here
    }
    else if ([[timersArray objectAtIndex:row] isEqual:@"15 seconds"])
    {
        timerIndication.text = @"15 seconds selected";
        timersPickerView.hidden = YES;
        // Animation code to dismiss picker should go here
    }
    else if ([[timersArray objectAtIndex:row] isEqual:@"30 seconds"])
    {
        timerIndication.text = @"30 seconds selected";
        timersPickerView.hidden = YES;
        // Animation code to dismiss picker should go here
    }
    else if ([[timersArray objectAtIndex:row] isEqual:@"60 seconds"])
    {
        timerIndication.text = @"60 seconds selected";
        timersPickerView.hidden = YES;
        // Animation code to dismiss picker should go here
    }
}

#pragma mark - Delay method

// This is where Send button should be enabled
- (IBAction)selectTimer
{
    timersPickerView.hidden = NO;
    // Animation code to present picker view should go here
}

您可以使用以下代码在按下按钮后为选取器视图设置动画:

-(IBAction)button:(id)sender
{

   [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:0.6];
    CGAffineTransform transfrom = CGAffineTransformMakeTranslation(0, 200);
    PickerView.transform = transfrom;
    PickerView.alpha = PickerView.alpha * (-1) + 1;
    [UIView commitAnimations];

}

不要忘记将以下代码添加到您的 viewDidLoad 方法中

PickerView.alpha = 0;    
[self.view addSubview:PickerView];

它的作用是使选择器视图在第一次单击时从屏幕顶部掉落,并使选择器视图消失,您只需再次单击该按钮即可。从下一次单击开始,选择器视图就会出现并消失..希望它有帮助并且有效:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在按下按钮后以动画方式显示 UIPickerView? 的相关文章

  • iPhone UITableView 分页结果

    对从服务器拉取的大量结果进行分页的最佳方法是什么 就服务器而言 我可以抵消和限制结果 因此我一次只能提取 25 个结果 但是允许用户查看更多结果而不需要像应用商店一样不断向下滚动不断增长的列表的最佳方式是什么应用程序 谢谢 豪伊 要在列表底
  • 如何在 iBooks 上搜索桌面 UI

    我想像 iBooks 中那样显示 tableview 的搜索栏 我如何减少搜索栏的宽度以及如何在没有任何背景颜色的情况下显示它 另外 当页面显示时 如何最初隐藏搜索框 我可以想到两个选择 通过子类化 UITextfield 创建您自己的 U
  • #include 在 iOS 的 C++ 文件中找不到文件

    我在 iOS 下有一个目标 c c 项目 将其从 OS X 移动 然后出现 文件未找到 错误 include
  • Xcode 推送通知:用于生产模式的 APNS 服务器

    我正在实现我的第一个带有推送通知的应用程序 我已经完成了以下所有调试雷 万德利奇教程 http www raywenderlich com 3443 apple push notification services tutorial par
  • Swift - 本地通知不会被触发

    我正在 Swift 3 中编码 我只是想发送通知now没有任何延迟或间隔 然而 通知永远不会被触发 这是我的代码 视图控制器代码 import UserNotifications class HomeViewController UIVie
  • 带有子视图的 UIView beginAnimations

    我有一个漂亮且简单的视图 缩放 动画 它以一个点开始并动画到全屏尺寸 UIView beginAnimations nil context NULL UIView setAnimationBeginsFromCurrentState YES
  • 如何建立辅助NSSortDescriptor排序键?

    我已成功按排序键对数据进行排序lastName 但我想知道如何排序lastName 然后由firstName 这是我用来排序的代码lastName NSSortDescriptor sortDescriptor NSSortDescript
  • 滑动删除不起作用

    滑动删除功能在我的表格视图中不起作用 我已经在导航栏中实现了 commitEditingStyle 委托和编辑按钮 因此 当用户单击编辑按钮时 删除和添加按钮会相应显示 但是 在滑动时 删除按钮不会出现 并且似乎它无法将滑动识别为对 set
  • NSDictionary 上的 NSPredicate

    我试图根据字母表在表格视图中创建部分 并在这些部分下按字母顺序对我的条目进行排序 我已经收集了 bandArrayIndex 中 bandArray 每个条目的第一个字母 现在我尝试使用 NSPredicate 来计算每个字母有多少个 我正
  • UITableview 中的水平和垂直滚动[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 I want to make a lineup for a festival You can see what I want to a
  • iPhone 中的 NSNotification

    我正在将 NSSNotifcation 发送到 iPhone 应用程序中的另一个视图控制器 但它的观察者方法收到两次通知 这可能如何 任何人都可以指导我 我已经使用此代码来发布通知 NSNotificationCenter defaultC
  • 您是否标记 UIView 或将它们保留为属性?

    这主要是一个风格问题 但自从我开始为 iPhone 编程以来 我一直很好奇其他人的想法是什么 当您的 iPhone 应用程序中有一个 UIView 并且需要在应用程序的其他位置访问它时 通常在视图控制器中的另一个函数中 您是否喜欢用整数标记
  • 最小的 iOS 蓝牙管理器示例

    我一直在构建一个最小的示例 用于使用 iOS 5 0 中的 BluetoothManager 私有框架来检测附近的蓝牙设备 使用此问题中找到的答案 寻找触手可及的通用蓝牙设备 https stackoverflow com question
  • 如何禁用 UITableView 中某些行的删除操作?

    我知道使用setEditing 启用UITableView的编辑模式 但我更喜欢禁用某些特定行的操作 启用其他行 是否可以 Thanks interdev 实施the tableView canEditRowAtIndexPath meth
  • 从 UIImagePickerController 相机视图推送 viewController

    我正在开发一款消息应用程序 类似于 WhatsApp 用户可以互相发送文本和图像消息 当用户想要发送图像时 他可以从相机胶卷中选择一张图像 也可以用相机拍摄一张图像 这就是我介绍的方式UIImagePickerController对于这两种
  • iPhone 应用程序中的异步、同步、线程

    我正处于一个应用程序的设计阶段 该应用程序将利用 REST Web 服务 并且在使用异步 同步和线程方面遇到了困境 这是场景 假设您有三个选项可供深入研究 每个选项都有自己的基于 REST 的资源 我可以使用同步请求延迟加载每个请求 但这会
  • iPhone 的电子书框架

    我有一本书想作为 iPhone 应用程序发布 有谁知道我可以使用免费 或便宜 的框架来实现这一目标 换句话说 我想为我的书创建一个独立的 XCODE 项目 其中包含 iPhone 用户将本书作为独立应用程序阅读所需的所有代码 我见过 O R
  • 如何获取CATransition/Animation的结束事件?

    我的代码如下所示 CATransition transition CATransition animation transition duration duration 我希望得到CATransition Animation的结束事件 是否
  • 升级到 Xcode 4.3.1 后,自动设备配置选项消失了?

    自从升级到 Xcode 4 3 1 以来 这是我第一次发布版本 在查看我的配置文件是否是最新的时 我还注意到不再显示自动更新设备配置 即 它应该出现在该屏幕截图中的位置对我来说没有出现 如何将新设备添加到团队配置文件中 https stac
  • UIImageJPEGRepresentation 在视网膜显示屏上提供 2x 图像

    我有这段代码 它创建一个图像 然后向其添加一些效果并缩小其大小以使其largeThumbnail UIImage originalImage UIImage imageWithData self originalImage thumbnai

随机推荐

  • 将项目添加到 Listview 控件

    我有一个listview在 C 中 具有三列 视图是详细信息 我需要向每个特定列添加一个项目 但我很难做到这一点 我已经尝试了几件事 这是我到目前为止所得到的 感谢您提前提供的任何帮助 Add the pet to our listview
  • 如何将上传的图像添加到对象数组中?

    我正在创建一个专辑网站只是为了学习 Javascript 我有输入框来添加专辑的标题 艺术家和年份 当按下 添加专辑 时 它会将此信息插入到名为 albumList 的对象上的数组中 然后在列表元素中显示该信息 我想知道是否可以允许用户上传
  • Angular2,TypeScript,如何读取/绑定属性值到组件类(在 ngOnInit 中未定义)[重复]

    这个问题在这里已经有答案了 有人可以建议我如何读取 绑定属性值到 component 类 这在 ngOnInit 方法中似乎未定义吗 这是一个 plunker 演示 http plnkr co edit 4FoFNBFsOEvvOkyfn0
  • 统计模型逻辑回归收敛问题

    我正在尝试在大型设计矩阵 约 200 列 上的 statsmodels 中运行逻辑回归 这些特征包括大量交互 分类特征和半稀疏 70 整数特征 虽然我的设计矩阵不是actually病态的 似乎有些接近 根据numpy linalg matr
  • kv 语言的 Kivy 屏幕管理器参考

    我正在尝试制作一个主菜单 让我在单击按钮时切换屏幕 但我不知道如何从按钮引用管理器 我有一个主菜单页面的设置 在 kv 文件中
  • Rails // 白天按时区查询

    在使用时区方面不太有信心 在这方面寻求一些帮助 我有一个 cron 作业 每隔一段时间检查一次用户 它调用 rake 任务 在此 rake 任务中 我查询用户并根据条件向每个用户发送一封电子邮件 我有每个用户的时区信息 我想对那些仅返回当前
  • Gnuplot BibTeX 引用

    好吧 这不是一个正确的编程问题 但也许答案会对其他人有所帮助 我一直在尝试寻找合适的 BibTeX 条目gnuplot 包含在科学出版物中 我只是不想引用任何指南书 而是引用实际的软件 有谁有想法或曾经使用过吗 我希望找到类似的东西cita
  • fread():读取以 \r\r\n 作为换行符的表

    我在文本文件中有制表符分隔的表 其中所有行都以 r r n 0x0D 0x0D 0x0A 如果我尝试读取这样的文件fread 它说 行结尾为 r r n R 的 download file 似乎添加了额外的 r 在 Windows 上的文本
  • Java Velocity引擎初始化问题

    我写了一个包含邮件构建部分的库 该邮件构建部分使用了 Velocity mailbuilder 类如下 public class mailBuilder public void initialize throws Exception Pro
  • 我们如何测试某物是否是参考?

    现在我正在使用这个 instance clojure lang IDeref x 但我怀疑可能有更好 更惯用的方法来做到这一点 这是不正确的 您正在检查对象 x 是否实现了 IDeref 接口 这仅仅意味着您可以使用 符号取消引用该对象 你
  • xsd.exe 生成的类可为空值

    我一直在使用 xsd exe 生成一个用于反序列化 XML 的类 我在源 xsd 中有不需要的十进制值
  • Angular 5 视图超时后不更新

    我在 Angular 5 中设置了一个超时 在一段时间后隐藏元素 this showElement true setTimeout function console log hide this showElement false 2000
  • 适用于 Mac 的单击一次部署

    正如标题所述 是否有与 Mac 上的 Click Once 应用程序部署等效的方法 我问这个问题是因为 Lion 附带的 Safari 版本已删除 DMG 磁盘映像 文件作为下载后打开的 安全文件类型 我工作的公司有一个相当特殊用途的应用程
  • 通过 BlackBerry 发送 POST 数据后获取 HTML 响应

    我需要在发送 POST 数据后从 URL 读取 HTML 响应 我已经有以下两个函数 但我不知道如何组合它们 以便我可以发送 POST 数据并获取响应 此函数获取标准 HTML 响应 public static String getData
  • Java Rest api 需要等待才能处理

    我有一个 Java Rest API 物联网设备将使用它来发送数据 每个设备都有一个时间段 比如 15 秒 与 API 进行通信 在该时间段内 可以有多个具有相同数据集的消息 我想要做的是 当 API 从设备接收到新消息时 它会等到时间段结
  • basic_ostringstream::str 悬空指针

    最近我发现了以下代码中的错误 ostringstream o o lt lt some string const char s o str c str empty string instead of expected some string
  • librosa.effect.Split的返回值很奇怪

    正如标题所示 这个函数的结果不符合逻辑 我不明白这个函数在做什么 例如 这里是一些可重现的代码 load sample audio filename librosa util example audio file audio sr libr
  • 推送到远程分支(无法更新引用)

    我有一个带有功能 初始更改分支的远程存储库 现在我想将一些文件从本地功能 初始更改分支推送到此远程分支 我浏览了一些关于推送到远程分支的帖子并尝试了一些方法 但我仍然遇到相同的错误 添加并提交后 我得到以下 git 状态 Sakibs Ma
  • Azure WebJobs SDK 服务总线死信队列

    使用 WebJobs SDK 时 将 BrokeredMessage 移动到死信队列的正确方法是什么 通常我只会调用 msg DeadLetter 但是 SDK 负责管理代理消息的生命周期 如果方法返回成功 它将调用 msg Complet
  • 如何在按下按钮后以动画方式显示 UIPickerView?

    我想在按下按钮后为 UIPickerView 制作动画 我已经将 UIPickerView 编码为隐藏在 viewDidLoad 上 并且在按下按钮后不会隐藏 但它的动画效果不像 ModalViewController 默认情况下的动画效果