UI学习 第五章 UIScrollView     UIPageControl

UI学习           第五章          UIScrollView     UIPageControl

UIScrollView
添加自定义背景
UIColor *mycolor = [ UIColor colorWithPatternImage :[ UIImage imageNamed : @"1.jpg" ]];
    scroll.backgroundColor = mycolor;
1.宏定义(常用)
#define WIDTH [[UIScreen mainScreen] bounds].size.width // 主屏幕的宽
#define HEIGHT [[UIScreen mainScreen] bounds].size.height // 主屏幕的高
2.初始化时给出frame,相当于设置了scoll的初始状态
UIScrollView *scroll = [[ UIScrollView alloc ] initWithFrame : CGRectMake ( 10 , 20 , WIDTH - 20 , HEIGHT - 30 )];
3.设置允许滑动的范围,如果想要左右滑动,则必须保证此宽大于scroll的frame对应的宽,如果想要上下滑动必须保证此高大于scroll的frame对应的高
scroll. contentSize = CGSizeMake ( WIDTH + 100 , HEIGHT + 100 );
4.是否允许滚动
scroll. scrollEnabled = NO ;
5.是否弹簧效果
scroll. bounces = NO ;
6.获取scoll当前滚动的位置
scroll. contentOffset = CGPointMake ( 10 , 10 );
    NSLog(@"%@",NSStringFromCGPoint(scroll.contentOffset));
7.是否允许整页滚动,如果想要左右整页滑动,要保证contentsize的宽是scrollview frame宽的整数倍,如果要上下整页滑动,要保证contentsize 的高是frame高的整数倍,当下一页露出范围小于整页的一半时,滚回到当前页,当超出一半时,滚动到下一页
scroll. pagingEnabled = YES ;
8.是否显示滚动条
scroll. showsHorizontalScrollIndicator = YES ;(水平)
scroll.showsVerticalScrollIndicator = NO;(垂直)
9.点状态栏时是否允许弹到顶部
scroll. scrollsToTop = YES ;
10.是否允许缩放(只读)
scroll. zooming
11.两手指捏合
scroll. zoomScale = 2 ;

代理方法
1.滑动时调用
-( void )scrollViewDidScroll:( UIScrollView *)scrollView{
    NSLog(@"滑动时调用");
}
2.点击状态栏调用
-( void )scrollViewDidScrollToTop:( UIScrollView *)scrollView{
    点击状态栏调用(scrolltotop = yes
    NSLog(@"到顶了");
}
3. 手指放到 scrollview 上开始滑动时调用
-( void )scrollViewWillBeginDragging:( UIScrollView *)scrollView{
   手指放到 scrollview 上开始滑动时调用
    NSLog(@"调用");
}
4.停止拖拽时调用
-( void )scrollViewDidEndDragging:( UIScrollView *)scrollView willDecelerate:( BOOL )decelerate{
    停止拖拽
    NSLog(@"---> 停止 ");
}
5.停止减速时调用( scrollview 不动了
-( void )scrollViewDidEndDecelerating:( UIScrollView *)scrollView{
    停止减速--scrollview不动了
    NSLog(@"不动了");
}
UIPageControl
1.设置页数(可读可写)
page . numberOfPages = 3 ;
2.设置当前页(可读可写)
page . currentPage = 0 ;
3.设置当前选中点的颜色
page . currentPageIndicatorTintColor = [ UIColor redColor ];
4.设置未选中的点的颜色
page . pageIndicatorTintColor = [ UIColor blackColor ];
5。可以添加事件
[ page addTarget : self action : @selector (change) forControlEvents : UIControlEventValueChanged ];
重点要理解 UIScrollView和各种控件的结合(UISegment,UIPagecontrol)
UIPagecontrol结合
-( void )change{
   
CGPoint a = { page . currentPage * 300 , 0 };
    [
scroll setContentOffset :a];
}

-(
void )scrollViewDidEndDecelerating:( UIScrollView *)scrollView{
   
int a = scrollView. contentOffset . x ;
   
int w = scrollView. frame . size . width ;
   
int index = a/w;
   
page . currentPage = index;
}
UISegment结合
-( void )viewchange{
   
CGPoint p = { seg . selectedSegmentIndex * 300 , 10 };
    [
scroll setContentOffset :p animated : YES ];
}

-(
void )scrollViewDidEndDecelerating:( UIScrollView *)scrollView{
   
CGPoint p = scrollView. contentOffset ;
   
int w = p. x ;
   
int index = w/scrollView. frame . size . width ;
   
seg . selectedSegmentIndex = index;
}

UIScrollView缩放
1.   _scrollView . delegate = self ;(设置代理)
    _scrollView . minimumZoomScale = 1 ;(最小缩放级别)
    _scrollView.maximumZoomScale = 3;(最大缩放级别)
2 .方法1
告诉 scrollView ,是哪个子视图要进行缩放
-( UIView *)viewForZoomingInScrollView:( UIScrollView *)scrollView{
   
   
return _imgView ;
}
方法2  停止缩放时调用
-( void )scrollViewDidEndZooming:( UIScrollView *)scrollView withView:( UIView *)view atScale:( CGFloat )scale{
   
// 停止缩放
   
NSLog ( @" 调用 " );
}
方法3  开始缩放时调用
-( void )scrollViewDidZoom:( UIScrollView *)scrollView{
   
NSLog ( @"---" );
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值