1. initWithFrame方法用来初始化并返回一个新的视图对象,根据指定的CGRect(尺寸)。
2. UIImageView 的contentMode属性
UIViewContentModeScaleToFill
UIViewContentModeScaleAspectFit
UIViewContentModeScaleAspectFill
UIViewContentModeRedraw
UIViewContentModeCenter
UIViewContentModeTop
UIViewContentModeBottom
UIViewContentModeLeft
UIViewContentModeRight
UIViewContentModeTopLeft
UIViewContentModeTopRight
UIViewContentModeBottomLeft
UIViewContentModeBottomRight
注意以上几个常量,凡是没有带Scale的,当图片尺寸超过ImageView尺寸时,只有部分显示在ImageView中。UIViewContentModeScaleToFill属性会导致图片变形。UIViewContentModeScaleAspectFit会保证图片比例不变,而且全部显示在ImageView中,这意味着ImageView会有部分空白。UIViewContentModeScaleAspectFill也会证图片比例不变,但是是填充整个ImageView的,可能只有部分图片显示出来。
3.实现图片循环无限播放的小思想
首先我们来讲讲思想:假如我们有1000张图片将要展现给用户,一个ImageView展示一个(大小为iphone5屏幕大小)那么1000张图片如果同时加载在imageView并且都添加在ScrollView中,只要图片稍微大点,那么系统肯定崩溃。
而我们这个时候只需要一个数组存储所有图片的名称,一个数组来存储3个图片即可,定义UIScrollView的contentSize等于3倍屏幕大小即可,然后加载数组中的3个图片, 实现当用户看到图片时,已经加载好左视图,右视图,以及用户现在看到的视图,当用户切换下一张图片或者上一张图片的时候我们对3张图片进行重新加载,并且让UIScrollView的contentOffset还原到中间的视图位置。
做好上述准备,那么我们目前已经实现了动态的加载图片来节省内存,那么至于今天的主题循环播放呢,我们可以用一个属性来记录当前所在的页数,而在scrollerDidScroll这个方法中进行判断用户是向左还是向右,来加或者减当前页面所在的页数来达到我们所要的效果,不多说,现在贴上代码,大家可以一起讨论,分享。
4. egoImageView 是网络大神的一个超好类库 可是 很多人都用 SdWebimage 这个东西用的人却不多。
其实个人感觉 这个类库还是蛮好用的
简单说下自己的使用心得
首先加载一个网络图片
EGOImageView *imageView = [[[EGOImageViewalloc]initWithFrame:CGRectMake(kBaseViewOriginX,kBaseViewOriginY,kBaseVieWidth,kBaseViewHeight) ] autorelease];
imageView.imageURL = [NSURLURLWithString:@"http://imgsrc.baidu.com/forum/pic/item/9d82d158ccbf6c811c42177ebc3eb13533fa402a.jpg"];
[self.viewaddSubview:imageView];
这样就可以了
//清理缓存~
[[EGOCachecurrentCache] clearCache];
//获得 下载好的图片
UIImage *getImage = [[EGOImageLoadersharedImageLoader]imageForURL:[NSURLURLWithString:@"http://imgsrc.baidu.com/forum/pic/item/9d82d158ccbf6c811c42177ebc3eb13533fa402a.jpg"]shouldLoadWithObserver:nil];
正则表达式:
^(-)?(([1-9]\\d*)|0)(\\.(\\d){0,2})?$
^文本开头
$文本结束
[1-9]匹配数字1到9之间任意一个
\\表转义,实际应为\
\d匹配数字,也即[0-9]
\. 这个表示匹配小数点
1.关于tableViewcell选中问题总结
2.截取字符串显示:
[str1 substringWithRange:NSMakeRange(6,2)]就是排除前面6个,取出来2个字符串显示。
3.UILabel中显示的数字:有两位小数
cardMoney.text = [NSStringstringWithFormat:@"%.2f",[str3intValue]*0.01];
因为text是显示的字符串,然后这样设置就可以弄成2位小数了。str3是取出来的值。
4.求字符串长度:
[searchText length]
5.判断字符串内容相同
a isEqualToString:@"0"
6.设置数组
[NSArray arrayWithObjects:@“Steve”, @“Ankush”, @“Sean”, nil];
button.titleLabel.textAlignment = NSTextAlignmentLeft; 这行代码是没有效果的,这只是让标签中的文本左对齐,但
并没有改变标签在按钮中的对齐方式。
所以,我们首先要使用
button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; 这行代码,把按钮的内容(控件)
的对齐方式修改为水平左对齐,但是这们会紧紧靠着左边,不好看,
所以我们还可以修改属性:
button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);
这行代码可以让按钮的内容(控件)距离左边10个像素,这样就好看多了