首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

列表滑动展开隐藏头部HeaderView

默认界面Header完全展开,并且Header显示AV号(别乱想,就是视频编号了)以及播放按钮。滑动之后Header被压缩,按钮移到AV号左边。 ? 我就照着界面简单实现了主要功能,比较简陋。...对于按钮移动的动画就没有去花时间还原了,毕竟这里主要是为了实现滚动压缩、展开Header,动画不讨论。 ? 实现思路 如图所示: ?...ScrollHeader占据屏幕上方,高度为展开后的高度 UITableView占据整个屏幕,这样可以完全滚动。...topView 即为压缩后的布局 bottomView 即为展开后的布局 我这里采取将topView固定在ScrollHeader的顶部,覆盖在bottomView上方,根据滑动对其淡入淡出。...剩下的工作就是捕捉滑动状态,并且对滑动距离进行计算,移动topView和bottomView了。对于计算也不做过多说明了,因为没有几张草图也说不清。直接贴上代码,跟着代码算一下就知道怎么回事了。

3.4K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    iOS全屏滑动代码

    ;         // 创建全屏滑动手势,调用系统自带滑动手势的target的action方法     UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer...handleNavigationTransition:)];    // 设置手势代理,拦截手势触发     pan.delegate = self;         // 给导航控制器的view添加全屏滑动手势...    [self.view addGestureRecognizer:pan];         // 禁止使用系统自带的滑动手势     self.interactivePopGestureRecognizer.enabled...拦截手势触发 - (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {    // 注意:只有非根控制器才有滑动返回功能...如果只有一个子控制器,肯定是根控制器     if (self.childViewControllers.count == 1) {             // 表示用户在根控制器界面,就不需要触发滑动手势

    1.1K00

    iOS全屏滑动代码

    ;         // 创建全屏滑动手势,调用系统自带滑动手势的target的action方法     UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer...handleNavigationTransition:)];    // 设置手势代理,拦截手势触发     pan.delegate = self;         // 给导航控制器的view添加全屏滑动手势...    [self.view addGestureRecognizer:pan];         // 禁止使用系统自带的滑动手势     self.interactivePopGestureRecognizer.enabled...拦截手势触发 - (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {    // 注意:只有非根控制器才有滑动返回功能...如果只有一个子控制器,肯定是根控制器     if (self.childViewControllers.count == 1) {             // 表示用户在根控制器界面,就不需要触发滑动手势

    1.4K10

    iOS Human Interface Guidelines》——Slider滑动

    滑动滑动条让用户对一个值或者进程在允许的范围内进行调整(如下所示左边右边都有自定义图片)。 API NOTE 查看UISlider学习更多关于在你的代码中定义滑动条的内容。...一个滑动条: 由一个水平的轨迹和一个滑动点(一个用户可以滑动的圆形控件)组成 可以包含传达左边与右边值的意义的图片 在最小值(一般在左边)和滑动点之间的轨迹部分填充颜色 使用滑动条来给用户对他们可选值的细粒度控制或者当前进程的操作...如果它增加了值,为滑动条创建自定义的外观。...比如说,你可以: 定义滑动点的外观,这样用户可以一眼看出滑动条是否是活动的 在滑动条的两端提供图片来帮助用户理解滑动条的功能 一般来说,这些自定义的图片相当于滑动条控件值范围的最小和最大值。...为滑动点定义一个不同的外观,这依赖于滑动点在哪一边以及控件在什么状态 不要使用滑动条来显示音量控件。如果你需要显示一个音量滑动条,当你使用MPVolumeView的时候可以使用系统提供的音量滑动条。

    92320

    iOS-可交互滑动的TabBarController

    1.先看一下效果 左右滑动交互的TabBarController 2.在iOS7.0以前,要实现这样的效果,只有自定义TabBar了,但这很麻烦。...而在iOS7.0以后,苹果在UITabBarControllerDelegate中增加了下面两个代理方法: /** * 实现该代理,即可以实现自定义的各界面切换时的动画(如平推,缩放,淡入淡出等)...toViewController:(UIViewController *)toVC NS_AVAILABLE_IOS...]; } } - (void)beginInteractiveTransitionIfPossible:(UIPanGestureRecognizer *)sender{ // 通过滑动的方法判断应该像那边跳转...finishInteractiveTransition; // 本例中的实现 - (CGFloat)percentForGesture:(UIPanGestureRecognizer *)gesture{ // 通过手势在屏幕中滑动的距离来判断当前执行的百分比

    1.7K41

    iOS滑动条UISlider的使用方法

    引 由于项目的需求,学习使用了一下滑动条UISlider的使用方法,这里记录一下。...首先看我们实现出来的效果: 如上图所示,在图中有四个内容:滑动条本身、最小值label、最大值label、当前值label。 随着滑动条的左右滑动,中间的当前值label会跟着做出变化。...现在看看怎么实现的: 1.首先我们要创建滑动条,这是肯定的,创建代码如下: // 滑动条slider UISlider *slider = [[UISlider alloc] initWithFrame...这里要注意的一点是,滑动条的高度,如果设为0,其实还是会正常显示。但是!一旦高度设为0,滑动条将不能左右滑动!我就入过这个坑。。。找了半天没找到原因,最终发现是这里的问题。...3.现在来看拖动滑动条时的响应方法: 我们要做到的是当前值的label显示的内容随着滑动条的滑动而变化,那么只需要在滑动条的响应方法中设置label的显示内容就可以了,注意同样要取小数点前一位: //

    2.4K20

    iOS中怎样创建可展开的Table View?(下)

    接上篇:在iOS中怎样创建可展开的Table View?...(上) 展开和合拢 我猜这部分可能是你最期望的了,因为本次教程的目标将会在在部分实现.第一次我们设法让顶层的cell,在它们点击的时候展开或者合拢.以及显示或者隐藏合适的子cell....,但是我们要将一步一步地走.现在我们已经有了点击行的真正索引,我们必须要检查cellDescriptors数组,指定的cell是否展开.某个cell是可展开的,但是现在还没有展开,那么我们要标示(我们将使用一个...当顶层cell不是展开的时候,我们做了标记. 我们会把所有的子cell标记为不可见的....总结 正如我开始说的,创建可展开的tableView在某些时候真的很有用,从麻烦当中创建新的视图控制器,可以用这种tableView来处理,它可以为app节省时间.在这次教程先前的部分,我向你提出了一种创建可展开

    1.5K30

    iOS中怎样创建可展开的Table View?(上)

    原文地址 本文作者:gabriel theodoropoulos 原文:How To Create an Expandable Table View in iOS 原文链接 ---- 几乎所有的app都有一个共同特征...,创建可展开的tableView是一个不错的选择.使用可展开的tableView,在任何情况下,只是向用户请求已经存在的数据或是默认的视图控制器,而没必要创建新的视图控制器.例如,有了可展开的cell,...所以,现在你知道我们最终的目标了,因此下面我们将要学习如何创建一个可展开的tableView....描述这些cell 在此次教程中,我所提出的有关可展开的tableView,其中涉及的所有实现和技术都是基于一个简单的想法:为app描述每一个cell的细节.这样让它知道是可能的,cell是否可以展开,是否可见....对于我们来说,在这篇教程中,它是最重要的属性之一. isExpanded:也是一个布尔值,表示一个可以展开的cell是展开状态还是合拢状态.顶级的cell默认是合拢的,所以,所有的cell初始值都会设置成

    1.8K50

    iOS开发中创建一个纵向滑动控件

    比如我们常用的读书App,每本书都会有一个章节目录,如果一本书的章节目录过多有上千张章的话我们要滑动到后面的某一个张可能需要需要滑动很长时间,而如果有了我们效果中的那个右侧滑动控件则能很快地滑动到后面的某些章节...创建一个UITableView,将UISlider的滑动和UITableView的滑动关联起来(在UISlider滑动的时候让UITableView也随着滑动,在UITableView滑动的时候UISlider...也随着滑动)。...UITableView和UISlider的具体关联: 4.1 UISlider滑动的时候让UITableView跟着滑动:当UISlider滑动的时候UISlider的value值会发生变化,此时让(...注意:在滑动UISlider的时候此时UITableView也会滑动但不能再通过UITableView的滑动再去改变UISlider的值。

    94110
    领券