iOS设计—滚动页面的设计 (控件UIScrollView)

Posted 驭狼共舞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS设计—滚动页面的设计 (控件UIScrollView)相关的知识,希望对你有一定的参考价值。

 在ios开发中 ,都会涉及页面的滚动设计,在此我就以手机的滚动页面设计为例简单说一下;
专为初学者而准备的,高手就不用看了  ,因为内容太过于简单
下面为设计的过程,
 
首先在.h文件中声明属性
 
  ViewController.h
#import <UIKit/UIKit.h>
 
//宏定义  手机屏幕的宽Width和高Height;注:宏定义的结束不能加符号“;”.
#define Width self.view.frame.size.width 
#define Height self.view.frame.size.height
 
此处也可以不用设置宏定义,
 
 
@interface ViewController : UIViewController<UIScrollViewAccessibilityDelegate>//此处为遵循代理
//属性的声明;
@property(strong,nonatomic)UIScrollView *myScrollView;//滑动视图
@property(strong,nonatomic)UIPageControl *mypageControl;//页面控制
@end
 
 
在.m文件中
  ViewController.m

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
   //创建底屏幕面板
    self.myScrollView=[[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, Width, Height)];
    self.myScrollView.backgroundColor=[UIColor grayColor];
    //内容面板大小
    self.myScrollView .contentSize=CGSizeMake(414 *5, 736);
    //指定代理
    self.myScrollView.delegate=self;
   
    //添加图片1
      UIImageView *imageView1=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 414, 700)];
    imageView1.image=[UIImage imageNamed:@"/Users/scjy/Desktop/UIPickView/UIPickView/image/屏幕快照 2016-03-09 下午1.22.21.png"];
   
    //添加图片2
    UIImageView *imageView2=[[UIImageView alloc]initWithFrame:CGRectMake(414, 0, 414, 700)];
    imageView2.image=[UIImage imageNamed:@"/Users/scjy/Desktop/UIPickView/UIPickView/image/屏幕快照 2016-03-09 下午1.23.16.png"];
   
    //添加图片3
    UIImageView *imageView3=[[UIImageView alloc]initWithFrame:CGRectMake(414*2, 0, 414,700)];
    imageView3.image=[UIImage imageNamed:@"/Users/scjy/Desktop/UIPickView/UIPickView/image/屏幕快照 2016-03-09 下午1.24.13.png"];
    //添加图片3
    UIImageView *imageView4=[[UIImageView alloc]initWithFrame:CGRectMake(414*3, 0, 414,700)];
    imageView4.image=[UIImage imageNamed:@"/Users/scjy/Desktop/UIPickView/UIPickView/image/屏幕快照 2016-03-09 下午1.33.30.png"];
    //添加图片3
    UIImageView *imageView5=[[UIImageView alloc]initWithFrame:CGRectMake(414*4, 0, 414,700)];
    imageView5.image=[UIImage imageNamed:@"/Users/scjy/Desktop/UIPickView/UIPickView/image/屏幕快照 2016-03-09 下午1.50.36.png"];
    //将图片添加带屏幕面板上
    [self.myScrollView addSubview:imageView1];
    [self.myScrollView addSubview:imageView2];
    [self.myScrollView addSubview:imageView3];
    [self.myScrollView addSubview:imageView4];
    [self.myScrollView addSubview:imageView5];
    //将屏幕面板添加到视图上
    [self.view addSubview:self.myScrollView];
   
    //锁定滚动方向
    self.myScrollView.directionalLockEnabled=NO;
    //判定是否设置面板屏幕的分页..........
    self.myScrollView.pagingEnabled=YES;
   //判定是否显示滚动条
    self.myScrollView .showsHorizontalScrollIndicator=NO;
   
   
   
    //页面控制按钮
    self.mypageControl=[[UIPageControl alloc]init];
    CGSize pageSize=CGSizeMake(120, 20);
    self.mypageControl.frame=CGRectMake((Width-pageSize.width)/2, Height-pageSize.height-40, pageSize.width, pageSize.height);
   
   
//    self.mypageControl.backgroundColor=[UIColor grayColor];
   
     //设置滚动页面的页数
    self.mypageControl.numberOfPages=5;
    //设置最初显示的页数
    self.mypageControl.currentPage=0;
    [self.view addSubview:self. mypageControl];

   
}

//代理Delegate的方法实现

-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
    self.mypageControl.currentPage=(int)(scrollView.contentOffset.x/Width);
  NSLog(@"%@",scrollView);
}
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
 
 
 
设计的最终效果如下
滑动到不同页面效果不同。。
第1 页                                                                     第2 页
技术分享 技术分享
 
 
 
 
 
 

以上是关于iOS设计—滚动页面的设计 (控件UIScrollView)的主要内容,如果未能解决你的问题,请参考以下文章

何时使用 UITouch 与 UIScroll

按下窗口上部时防止Ios设备滚动到顶部

ios开发--网易滚动导航栏

UIView中的iOS UIScrollView

如何在 UIScrollView iOS/Swift 中的控件页面之间水平滚动

如何在ios的页面控件中实现水平和垂直滚动