在 IOS 8 日历应用中搜索

Posted

技术标签:

【中文标题】在 IOS 8 日历应用中搜索【英文标题】:Search As in IOS8 Calender app 【发布时间】:2014-11-20 11:00:19 【问题描述】:

我想知道如何实现与日历应用程序中相同的搜索功能。当您单击 RightBarButton 时,一个带有 searchBar 动画的新导航栏将在现有的顶部进行动画处理,然后您单击取消它将动画消失。我猜这是一个出现在顶部的 UISearchDisplayController,但我该怎么做呢?

在这里你会看到一个插图,所以当你点击 searchButton 时,搜索栏会从顶部出现,当你按下完成时,它会再次动画。

【问题讨论】:

我希望你不会因为不使用手绘圈子而被否决meta.stackexchange.com/a/19775 【参考方案1】:

您应该尝试使用以下命令显示搜索栏:

点击:

    [UIView animateWithDuration:.5 delay:0.0 options:UIViewAnimationOptionCurveEaseIn animations:^
        _collectionView.center = CGPointMake(160, 700);
     completion:^(BOOL finished) 
        [self presentViewController:clockTappedController animated:NO completion:nil];
    ];

在视图中将出现:

[UIView animateWithDuration:.5 delay:0.0 options:UIViewAnimationOptionCurveEaseIn animations:^
            _collectionView.center = CGPointMake(160, 528);

        
        completion:^(BOOL finished) 
        ];

我已经将它用于集合视图,但我认为您可以使用搜索栏来做同样的事情。

从屏幕上加载搜索栏,然后在点击图标时将其向下滑动。当您点击完成时,您再次将搜索栏从屏幕上移开。

【讨论】:

你能解释一下你的collectionView是做什么的吗?当您单击一个按钮时,collectionView 会滑入还是什么? 是的,对不起。这是 viewWillAppear 中的动画,我点击了这样的动画:[UIView animateWithDuration:.5 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^ [_collectionView setAlpha:0.5]; completion:^(BOOL finished) [UIView animateWithDuration:.5 delay:0.0 options:UIViewAnimationOptionCurveEaseIn animations:^ _collectionView.center = CGPointMake(160, 700); completion:^(BOOL finished) [self presentViewController:clockTappedController animated:NO completion:nil]; ]; ]; 所以动画提供了一个 alpha 动画和集合视图的移动到屏幕之外,然后再次将集合移动到他的位置。

以上是关于在 IOS 8 日历应用中搜索的主要内容,如果未能解决你的问题,请参考以下文章

ios 添加事件到谷歌日历

DateFormatter的LocalizedString与iOS默认日历应用程序不同

如何在 ios 日历中的 EKEvent 中设置特定警报?

日历权限在iOS应用之外更改时崩溃

在 iOS 应用程序之外更改日历权限时崩溃

混合应用程序中的日历样式日期选择器(Cordova/Phonegap)