2016-1-3点菜系统demo的实现,pickerView的学习

//
// ViewController.m
// pickView
//
// Created by Mac on 16/1/3.
// Copyright © 2016年 Mac. All rights reserved.
// #import "ViewController.h" @interface ViewController ()<UIPickerViewDataSource,UIPickerViewDelegate>
@property (weak, nonatomic) IBOutlet UIPickerView *pickView;
@property (nonatomic, strong)NSArray *foods;
@property (weak, nonatomic) IBOutlet UILabel *fruitLable;
@property (weak, nonatomic) IBOutlet UILabel *mainfoodLable;
@property (weak, nonatomic) IBOutlet UILabel *drinkLable;
- (IBAction)randomPick; @end @implementation ViewController
- (NSArray *)foods
{
if (!_foods) {
NSString *path = [[NSBundle mainBundle] pathForResource:@"foods.plist" ofType:nil];
NSArray *array = [NSArray arrayWithContentsOfFile:path];
_foods = array;
}
return _foods;
}
- (void)viewDidLoad {
[super viewDidLoad];
[self pickerView:self.pickView didSelectRow: inComponent:];
[self pickerView:self.pickView didSelectRow: inComponent:];
[self pickerView:self.pickView didSelectRow: inComponent:]; }
#pragma mark - 数据源方法
//返回总共多少列;
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return self.foods.count;
}
//返回每列多收行;
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
NSArray *array = self.foods[component];
return array.count;
}
#pragma mark - 代理方法
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
NSArray *array = self.foods[component];
return array[row];
}
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
// NSLog(@"component is %d,row is %d",component,row);
NSArray *array = self.foods[component];
NSString *str = array[row];
switch (component) {
case :
self.fruitLable.text = str;
break;
case :
self.mainfoodLable.text = str;
break;
case :
self.drinkLable.text = str;
break;
default:
break;
}
}
#pragma mark - 随机点菜按钮
- (IBAction)randomPick {
// 找出总共多少列
NSInteger countOfColumns = self.foods.count;
// 利用for循环找出每一列有多少行
for (int i = ; i < countOfColumns ; i ++) {
NSArray *array = self.foods[i];
// 找出当前这一列有多少行;
NSInteger countOfRows = array.count;
// 在这一列中随机产生一个数字;
NSUInteger randomRow = arc4random_uniform((int)countOfRows);
// 更改数据
[self pickerView:self.pickView didSelectRow:randomRow inComponent:i];
[self.pickView selectRow:randomRow inComponent:i animated:YES];
}
}
@end
2016-1-3点菜系统demo的实现,pickerView的学习的更多相关文章
- 网上搜到的权限系统demo
网上搜到的权限系统demo http://www.sojson.com/shiro
- Django开发点菜系统学习笔记
1.使用django-simple-captcha包的时候,会调用到: register_form = RegisterForm(request.POST) 但是这个时候captcha不进行错误检验, ...
- 【2016年特别福利】史上最全CSS学习资料大全
css学习篇 [2016年特别福利]史上最全CSS学习资料大全
- Microsoft Office 2016 for win10 全版本下载+注册激活_Office教程学习网
Microsoft Office 2016 for win10 全版本下载+注册激活_Office教程学习网 http://pan.baidu.com/s/1qWxdvT6
- 基于Web的制造追溯系统DEMO
写在前面 本文不贴任何代码,以图片为主,也许图片更直观,请各位园友谅解! 很久没有写过博客了,这是2016年的第一篇文章:最近主要是忙着完成公司的一个新项目,逛园子的时间都明显少了,只有下班回到家睡觉 ...
- 使用微软企业库5.0提供的unity配置解藕系统demo(源码)
最近公司集50多号开发人员的人力围绕一个系统做开发,框架是免不了要统一的,公司提供的架构,利于分工合作,便于维护,扩展,升级,其中使用了到微软的企业库来解藕系统,只是因为框架封装,于是在网上学习了一个 ...
- python选课系统demo的小练习
#简化选课系统代码:先登陆,然后判断身份并实例化,根据身份对应的类,让用户选择 class Manager: operate_dict=[ ('创造学生账号',"creat_student& ...
- OMG点菜系统
算是一个项目吧,自己一个人也写了很久,有很多东西是自己写的,当然也有在网上借鉴人家大神的,不一而足,代码太多,不贴了,直接上图.(一直出现的天蓝色是使用windows自带主题壁纸上截取的一段) [原本 ...
- 2016 - 1 - 3 国旗选择demo
// // ViewController.m // 国旗 // // Created by Mac on 16/1/3. // Copyright © 2016年 Mac. All rights re ...
随机推荐
- datagridview 中添加了一个button类型的列,怎么写button的事件
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- JavaWeb基础: 学习大纲
JavaWeb基础: Web应用和Web服务器 JavaWeb基础: Tomcat JavaWeb基础:HTTP协议和基于Restful的架构 JavaWeb基础: Web工程配置文件 JavaWeb ...
- servlet和web容器之间的关系
Java是一种动态加载和运行的语言.也就是说当应用程序持有一个类的地址(CLASSPATH)和名称(包名和类名)的情况下,可以在程序运行期 间任何时候加载这个类,并创建和使用该类的对象.Servlet ...
- CF---(452)A. Eevee
A. Eevee time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...
- 三级菜单---zhufeng
<!doctype html><html><head><meta charset="utf-8"><title>无标题文 ...
- Div CSS absolute与relative的区别小结
absolute:绝对定位,CSS 写法“ position: absolute; ”,它的定位分两种情况,如下: 1. 没有设定 Top.Right.Bottom.Left 的情况,默认依据父级的“ ...
- POJ 3206 最小生成树
DESCRIPTION:T_T 在下是读不懂题意的.但是捏.现在知道是求把所有的点(是字母的点)连起来的最小的权值.即最小生成树.因为求最小生成树是不计较源点是哪个的.所以可以把A和S看成一样的.首先 ...
- DQL查询语句内容整理
select * from t_hq_ryxx; select bianh,xingm from t_hq_ryxx; --为字段名定义别名 select bianh as 编号,xingm as 姓 ...
- LA 4119 - Always an integer
https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_probl ...
- 二模 (12)day2
第一题: 题目大意: 有N颗糖,两个人轮流取,每次只能取质数颗,不能取的输.求先取者若必胜,最少需要多少步胜利.(N<=10000) 解题过程: 1.看到N的范围比较小,先打个素数表,然后dp即 ...