要实现点击电池条的时候立即回到页面的顶部的时候注意:

只有当一个主控制器有一个scrollview 并把这个属性设置为yes,其他的scrollview.scrollsToTop = NO 这样才会响应这个事件,原理很简单,如果有2个scrollview,系统根本不知道你需要哪个滚动到最上面 切记!

滑动页面的时候,改变scrollerView 的背景色:
、遵循协议:<UIScrollViewDelegate>

、写成私有变量
// 优化页面的拖拽的时候使用
CGFloat _contentOffsetY;
CGFloat _oldContentOffsetY;
CGFloat _newContentOffsetY; 、执行方法
#pragma mark—————— 优化页面的拖拽的时候使用(开始)
// 开始拖拽页面
-(void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{
_contentOffsetY = scrollView.contentOffset.y;
if (_contentOffsetY <= ) {//确保在向上快拖的时候,底部色值不抖动 scrollView.backgroundColor = K_SET_COLOR_VALUE(K_NAV_BGC);
//NSLog(@"\n\n %s 【_contentOffsetY】= %.2f \n",__FUNCTION__,_contentOffsetY);
}
}
//滚动时候调用该方法(手指离开屏幕后)
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{ _newContentOffsetY = scrollView.contentOffset.y; // 滚动
if (_newContentOffsetY > _oldContentOffsetY && _oldContentOffsetY > _contentOffsetY) { // 向上滚动
if (_newContentOffsetY > ) {// 确保,上下抖动的时候,顶部不抖色
scrollView.backgroundColor = K_SET_COLOR_VALUE(K_ROOT_BGC);
} } else if (_newContentOffsetY < _oldContentOffsetY && _oldContentOffsetY < _contentOffsetY) { // 向下滚动
if (_newContentOffsetY < ) {// 确保,上下抖动的时候,底部不抖色 scrollView.backgroundColor = K_SET_COLOR_VALUE(K_NAV_BGC);
//NSLog(@"\n\n %s \n",__FUNCTION__);
} } // 拖拽
if (scrollView.dragging) {
if ((scrollView.contentOffset.y - _contentOffsetY) > 5.0f) { // 向上拖拽 //NSLog(@"\n\n %s 【_newContentOffsetY】 = %.2f \n",__FUNCTION__,_newContentOffsetY);
if (_newContentOffsetY > ) {// 确保,上下抖动的时候,顶部不抖色
scrollView.backgroundColor = K_SET_COLOR_VALUE(K_ROOT_BGC);
} } else if ((_contentOffsetY - scrollView.contentOffset.y) > 5.0f) { // 向下拖拽 if (_newContentOffsetY < ) {// 确保,上下抖动的时候,底部不抖色
scrollView.backgroundColor = K_SET_COLOR_VALUE(K_NAV_BGC);
//NSLog(@"\n\n %s \n",__FUNCTION__);
} }
}
}
// 确实结束减速
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{ //NSLog(@"\n\n【_newContentOffsetY】 = %.2f \n",_newContentOffsetY);
if (_newContentOffsetY > ) {//确保在向上快拖的时候,顶部色值不抖动 scrollView.backgroundColor = K_SET_COLOR_VALUE(K_ROOT_BGC);
}
_newContentOffsetY = 0.0f;
} // 完成拖拽(滚动停止时,调用此方法,手指离开屏幕前)
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{ _oldContentOffsetY = scrollView.contentOffset.y; }
#pragma mark—————— 优化页面的拖拽的时候使用(结束)

scrollerView 滚动的时候改变 scrollerView 的背景色代码的更多相关文章

  1. Gridview 重建表头/单击单元格弹出对话框/改变单元格背景色

    整理工作~ 完整的代码在GitHub上, 路径: 项目背景:追踪某个issue,并且记录每天的状态. 要求:1.点击日期就能更改,并且用颜色标志不同的状态 2.增加按钮可关闭issue 3.布局要求日 ...

  2. vue中滚动页面,改变样式&&导航栏滚动时,样式透明度修改

    vue中滚动页面,改变样式&&导航栏滚动时,样式透明度修改.vue <div class="commonHeader" v-bind:class=" ...

  3. 最新的JavaScript核心语言标准——ES6,彻底改变你编写JS代码的方式!【转载+整理】

    原文地址 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和for-of循环 生成器 Generators 模板字符串 不定参数和默认参数 解构 Destructu ...

  4. 最新的JavaScript核心语言标准——ES6,彻底改变你编写JS代码的方式!

    原文地址 迁移到:http://www.bdata-cap.com/newsinfo/1741515.html 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和f ...

  5. vc中改变对话框的背景色

    ---- 笔者曾在<软件报>2000年第5期中讨论过如何改变控件的颜色,但还有相当一部分的读者来信提问:一个基于对话框的MFC AppWizard应用程序中,如何改变对话框的背景颜色呢?对 ...

  6. EasyUI 中GridView 满足某条件 改变行的背景色

    <table id='grid' class='easyui-datagrid' style='width:1500px;height:450px' url='Ajax-index.php?mo ...

  7. WPF GridControl单元格值与过滤值相同时,改变单元格背景色

    DataTrigger的Value不可绑定,所以我们需要用MultiBinding来实现这个功能. <dxg:TableView.CellStyle> <Style TargetTy ...

  8. IOS 改变UISearchBar的背景色

    之前网上提供的方法试了很多种  都不能很好的去掉背景色  ,修改背景色方法如下: searchbar.barStyle = UIBarStyleBlackTranslucent; searchbar. ...

  9. 使用CSS3改变选中元素背景色

    CSS3代码如下: /* SELECTION ----------------- */ ::-moz-selection { background: #f00533; color: white; te ...

随机推荐

  1. Java中的final关键字(转)

    Java中的final关键字非常重要,它可以应用于类.方法以及变量.这篇文章中我将带你看看什么是final关键字?将变量,方法和类声明为final代表了什么?使用final的好处是什么?最后也有一些使 ...

  2. SQL Server 存储字符数较大字段的问题

    SQL Server 2000专门提供了处理text,ntext,image字段的函数,他们是: TEXTPTR TEXTVALID READTEXT UPDATETEXT WRITETEXT 一般作 ...

  3. Camtasia Studio录制屏幕字迹不清晰的原因

    Camtasia Studio这是一个很优秀的屏幕录像软件,功能强大且录制效果出色,支持众多格式输出: 之前一直用它录制视频的都很正常,但这次换系统后再重新安装后录制视频时,发现输出的视频画质不佳,文 ...

  4. 【内核研究】处理者_Handler

    虽然MessageQueue提供了直接读/写的函数接口.但对于程序猿来说,一般不直接读/写消息队列.之前了解到,在Looper.loop()函数中.当取出消息后,会回调msg.target对象的han ...

  5. 【Todo】Spark运行架构

    接上一篇:http://www.cnblogs.com/charlesblc/p/6108105.html 上一篇文章中主要参考的是 Link 这个系列下一篇讲的是Idea,没有细看,又看了再下一篇: ...

  6. Linux常用C函数-接口处理篇(网络通信函数)

    接口处理篇accept,bind,connect,endprotoent,endservent,getsockopt,htonl,htons,inet_addr,inet_aton,inet_ntoa ...

  7. Java笔试面试题007

    Java笔试面试题007 1.请用正則表達式匹配出QQ号(如果QQ号码为5-10位). 解答: ^ \d{5,10}$ 2.String, StringBuffer StringBuilder的差别. ...

  8. Mac 下解决虚拟机virtualbox 4.3和windows共享问题

    mac上面安装了最新的virtualbox,有些软件还是须要windows的. 1,在设置了共享之后,仍然不能使用 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZ ...

  9. 【Android】Android聊天机器人实现

    昨天看到一个Android视频教程讲图灵机器人.那个API接口用起来还是挺方便的,就准备自己动手做一个了. 另外自己还使用了高德地图的API接口用于定位(曾经用过高德的接口,比X度方便) 大体流程: ...

  10. 关于用HOOK拦截键盘的一些问题

    因为MSDN上说要这样做,所以我就这样做的,读懂MSDN是关键,下面来仔细阅读一下MSDN,看它到底是怎样描述的.阅读的时候我先给出原文,再进行自己的一些翻译或描述. 先看回调函数KeyboardPr ...