首页 > 代码库 > 开发进阶06_viewDidLoad_UISlider_Plist_NSBundle
开发进阶06_viewDidLoad_UISlider_Plist_NSBundle
iphone屏幕尺寸:
iphone4/4s 320 480
iphone5/5s 320 568
iphone6 375 667
iphone6 plus 414 736
@interface ViewController ()
{
NSArray *_allDescs;
}
@end
@implementation ViewController
#pragma mark 控制器的view加载完毕后会调用一次
- (void)viewDidLoad
{
[super viewDidLoad];
//1.设置描述
//获得所有的描述(通过解析plist文件来创建数组对象,比如传入文件的全路径)
//如果要访问项目中资源包中的所有资源。应该用mainBundle
NSBundle *bundle = [NSBundle mainBundle];
//获得文件的全路径
NSString *path = [bundle pathForResource:@"descs" ofType:@"plist"];
//加载path对应的文件来创建数组
_allDescs = [NSArray arrayWithContentsOfFile:path];
//2.设置默认描述
_imageDesc.text = _allDescs[0];
}
#pragma mark 设置工具栏
- (IBAction)setToos {
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.5];
CGPoint tempCenter = _settingView.center;
if(_settingView.frame.origin.y == self.view.frame.size.height){
tempCenter.y -= _settingView.frame.size.height;
}else{
tempCenter.y += _settingView.frame.size.height;
}
_settingView.center = tempCenter;
[UIView commitAnimations];
}
#pragma mark 设置图片-序号-描述
- (IBAction)sliderValueChange:(UISlider *)sender {
//1.设置中间的图片
//获得图片名称 %.f不保留任何小数
NSString *imageName = [NSString stringWithFormat:@"%.f.png",sender.value];
_imageView.image = [UIImage imageNamed:imageName];
//2.设置序号(第几张)
_imageNo.text = [NSString stringWithFormat:@"%.f/16",sender.value + 1];
_imageDesc.text = _allDescs[(int)(sender.value + 0.5)];
使用% . f占位符不保留任何小数,四舍五入
使用(int)10.9 结果是:10 取整
}
#pragma mark 图片尺寸改变
- (IBAction)imageSizeChange:(UISlider *)sender {
_imageView.transform = CGAffineTransformMakeScale(sender.value, sender.value);
}
#pragma mark 夜间模式
- (IBAction)nightModel:(UISwitch *)sender {
if(sender.on){
self.view.backgroundColor = [UIColor darkGrayColor];
}else{
self.view.backgroundColor = [UIColor whiteColor];
}
}
1、viewDidLoad
-》这是控制器的一个方法
-》当控制器的view创建完毕的时候会调用一次
2、UISlider
-》value属性可以获得当前的进度值
-》按钮的value发生改变,会出发UIControlEventValueChanged事件
3、Plist文件的使用
-》加载一个plist文件的时候,会返回一个plist的根节点对象(Root)
4、NSBundle的使用
-》利用NSBundle可以访问某个资源包的内容
-》如果访问软件中最主要资源包的内容,应该用mainBundle
NSBundle *bundle = [NSBundle mainBundle];
-》利用NSBundle获得文件的全路径
NSString *path = [bundle pathForResource : @"descs" ofType : @"plist"];
开发进阶06_viewDidLoad_UISlider_Plist_NSBundle
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。