《30天精通iPhone手机编程》-Day14-图片浏览器

        这一章的demo主要涉及到常量定义const,处理命令const可以取代宏定义#define的作用,在程序中限定声明的常量只能被读取,使用const定义常量时,必须确定常量对象初始化数据:const int a=3;在外部链接文件中,引用const常量时,加上extern后a成为了具有外部链接的对象,其地址具备外部链接特性:extern const int a;使用const比#define更节省内存空间,在程序中const只能做一份数据复制,而#define则定义多少个对象,将做多少次数据复制。

CGRect结构在屏幕上定义了一个矩形。它包含原点(rect.origin)和大小(rect.size) 

CGRectMake(origin.x,origin.y,size.width. Size.height)在代码中定义矩形

//定义滚动视图在视图中显示的高度
const CGFloat kScrollObjHeight	= 175.0;
//定义滚动视图在视图中显示的宽度
const CGFloat kScrollObjWidth	= 280.0;
//定义滚动视图在视图中显示的图像数量
const NSUInteger kNumImages		= 5;
//建立滚动视图的布局方法
- (void)layoutScrollImages
{
    //建立图像视图控件对象
	UIImageView *view = nil;
    //定义滚动视图的子视图
	NSArray *subviews = [scrollView1 subviews];
	//定义在水平位置排列的形式,重新分配所有视图的子视图,创建图像的坐标,定义位置为0
	CGFloat curXLoc = 0;
    //当视图中存在子视图时
	for (view in subviews)
	{
        //当视图中存在图像视图类型,并且视图的标记属性值大于0
		if ([view isKindOfClass:[UIImageView class]] && view.tag > 0)
		{
            //创建图像边框,定义边框界限为视图中的边框界线
			CGRect frame = view.frame;
            //把边框的起源属性值,定义图像原点(x和y)分别为(curXLoc的值和0)
			frame.origin = CGPointMake(curXLoc, 0);
            //定义视图中的边框属性为frame的值
			view.frame = frame;
			//定义图像的坐标值为所滚动图像的宽度
			curXLoc += (kScrollObjWidth);
		}
	}
	//设定滚动的尺寸,提供用户可以滚动的长度
	[scrollView1 setContentSize:CGSizeMake((kNumImages * kScrollObjWidth), [scrollView1 bounds].size.height)];
}
- (void)viewDidLoad {
    [super viewDidLoad];
    //定义视图的背景颜色为副页的背景色
	self.view.backgroundColor = [UIColor viewFlipsideBackgroundColor];
	//设置5个图像滚动的浏览,读取所有的图像,并把图像加入到滚动视图中
	NSUInteger i;
	for (i = 1; i <= kNumImages; i++){
		//定义文字为图像文件的名称
		NSString *imageName = [NSString stringWithFormat:@"image0%d.jpg", i];
		UIImage *image = [UIImage imageNamed:imageName];
		UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
		//创建图像边框,定义边框界线为imageView图像视图控件的边框属性
		CGRect rect = imageView.frame;
		//定义图像边框尺寸属性的高度
		rect.size.height = kScrollObjHeight;
		//定义图像边框尺寸属性的宽度
		rect.size.width = kScrollObjWidth;
		//定义图像视图的边框值为rect
		imageView.frame = rect;
		imageView.tag = i;
		[scrollView1 addSubview:imageView];
		[imageView release];
	}
	//显示滚动式图布局
	[self layoutScrollImages];	
	//定义滚动视图的剪辑范围属性值为YES,启动剪辑固定图像的范围
	scrollView2.clipsToBounds = YES;
	//定义滚动视图的显示各式属性值为白色
	scrollView2.indicatorStyle = UIScrollViewIndicatorStyleWhite;
	UIImageView *imageView = [[UIImageView alloc] initWithImage:
							  [UIImage imageNamed:@"image00.jpg"]];
	[scrollView2 addSubview:imageView];
	//设定拖动图像的尺寸,提供用户可以拖动的范围
	[scrollView2 setContentSize:
	 CGSizeMake(imageView.frame.size.width, imageView.frame.size.height)];
	//启动图像拖动属性
	[scrollView2 setScrollEnabled:YES];
	[imageView release];
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值