IOS开发高级之点餐系统的实现-01
IOS开发高级之点餐系统的实现-01
//
// ViewController.m
// 01-点餐系统
//
// Created by 鲁军 on 2021/2/11.
//#import "ViewController.h"@interface ViewController () <UIPickerViewDataSource,UIPickerViewDelegate>@property(nonatomic,strong)NSArray *foods;@property (weak, nonatomic) IBOutlet UILabel *lblFruit;@property (weak, nonatomic) IBOutlet UILabel *lblMainFood;@property (weak, nonatomic) IBOutlet UILabel *lblBar;- (IBAction)randomBtn:(id)sender;@property (weak, nonatomic) IBOutlet UIPickerView *pickerView;@end@implementation ViewController- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{NSString *selFood = self.foods[component][row];NSLog(@"%@",selFood);switch (component) {case 0:_lblFruit.text = selFood;break;case 1:_lblMainFood.text = selFood;break;case 2:_lblBar.text = selFood;break;}}- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{NSArray *comFoods = self.foods[component];NSString *food = comFoods[row];return food;}- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{return self.foods.count;}- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{return [self.foods[component] count];}- (NSArray *)foods{if(_foods==nil){_foods = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"foods.plist" ofType:nil]];}return _foods;}- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view.for(int i =0;i<self.foods.count;i++){[self pickerView:self.pickerView didSelectRow:0 inComponent:i];}}- (IBAction)randomBtn:(id)sender {for(int i =0; i<self.foods.count;i++){NSUInteger count = [self.foods[i] count];u_int32_t radNum =arc4random_uniform((int)count);NSInteger selRowNum = [self.pickerView selectedRowInComponent:i];while (selRowNum ==radNum) {radNum=arc4random_uniform((int)count);}[self.pickerView selectRow:radNum inComponent:i animated:YES];[self pickerView:self.pickerView didSelectRow:radNum inComponent:i];}}
@end
IOS开发高级之点餐系统的实现-01相关推荐
- 基于springboot框架开发的在线点餐系统
本系统后台基于springboot开发的在线点餐系统,系统以Java作为编程语言,采用Mysql数据库作为后台数据库. 系统分为商家和普通用户两大角色功能 商家后台功能如下:商家后台管理.菜单管理.订 ...
- iOS开发 高级绘图
概述 在iOS中可以很容易的开发出绚丽的界面效果,一方面得益于成功系统的设计,另一方面得益于它强大的开发框架.今天我们将围绕iOS中两大图形.图像绘图框架进行介绍:Quartz 2D绘制2D图形和Co ...
- iOS开发——高级篇——iOS开发之网络安全密码学
一.非对称加密 - RSA : + 公钥加密,私钥解密: + 私钥加密,公钥解密: + 只能通过因式分解来破解 二.对称加密 - DES - 3DES - AES (高级密码标准,美国国家安全局使用, ...
- iOS开发——高级篇——线程同步、线程依赖、线程组
前言 对于iOS开发中的网络请求模块,AFNet的使用应该是最熟悉不过了,但你是否把握了网络请求正确的完成时机?本篇文章涉及线程同步.线程依赖.线程组等专用名词的含义,若对上述名词认识模糊,可先进行查 ...
- 【IOS开发高级系列】异步绘制专题
1 图片处理 1.1 编辑图片的几个方法 第一种 先用UIImage对象加载一张图片 然后转化成CGImageRef放到CGContext中去编辑 第二种 用CGImageCreate函数创建CGIm ...
- 微信小程序开发 | 综合项目-点餐系统
综合项目-点餐系统 8.1 开发前准备 8.1.1 项目展示 8.1.2 项目分析 8.1.3 项目初始化 8.1.4 封装网络请求 8.2 [任务1]商家首页 8.2.1 任务分析 8.2.2 焦点 ...
- iOS开发——高级技术内购服务
内购服务 大家都知道做iOS开发本身的收入有三种来源:出售应用.内购和广告.国内用户通常很少直接 购买应用,因此对于开发者而言(特别是个人开发者),内购和广告收入就成了主要的收入来源.内购营销模式,通 ...
- iOS 开发 高级:通过AirServer使用AirPlay镜像并实现多屏幕显示控制
AirPlay是iOS中一个很酷的功能,通过Wi-Fi连接支持AirPlay的设备,然后使用镜像功能就能在其他设备显示内容,播放声音.有很多大型的游戏都支持AirPlay,这样比如连接电视时,那么iP ...
- iOS开发高级分享 - App间账号共享与SDK封装
本篇博客就先封装一个LoginSDK, 让后将该SDK植入到两个App中(一个暂且叫做"App One", 另一个暂且称为"App Two").当App One ...
最新文章
- 大厂程序员追求深圳女老师被拉黑!原因你想不到!
- 100个必会的python脚本-100行Python代码实现自动抢火车票(附源码)
- WPF中的一些常用类型转换
- 三星调侃iPhone13苍岭绿配色:受宠若惊
- YouSwap将于5月10日15:00新增CATE流动性挖矿
- 【干货】数字经济百项场景.pdf(附下载链接)
- 【Pro ASP.NET MVC 3 Framework】.学习笔记.4.MVC的主要工具-使用Moq
- Protel常用封装库
- 离散数学及其应用(一)
- 华北电力大学计算机学科排名,2018年华北电力大学世界排名、中国排名、专业排名...
- Windows Defender
- CSS---通向臃肿的道路(关于 “separation of concerns” (SoC)的原则)
- SHOI 2008 仙人掌图 BZOJ 1023
- cesium--entity
- nginx-ingress设置日志格式-配置转发真实ip-超时参数配置-会话保持参数
- php获取当前日期所在自然周周一周末以及前后自然周始末
- 一兆宽带服务器搭建网站,云服务器宽带只有一兆
- ARM7中断处理过程、状态、嵌套
- Android学习-通知的使用详解
- 绩效考核OKR怎么做?
热门文章
- python pip全称_“ pip install”和“ pip install”之间有什么区别和“ python -m pip install”?...
- 编写jmeter测试用例_JMeter 编写接口测试用例遇到的问题及解决
- 计算机安装与维修 等级,电脑升级究竟要怎么升级?维修多年的老师傅说出其中答案!...
- 别再叫我“老工”!!!工程师姓什么很重要!
- 玩转嵌入式,且看痞子衡
- 小米10Pro手机双击android,小米10Pro:不完美,但很小米。
- php 循环多条件,怎么循环带条件的数组
- python数据库操作框架_python bottle 框架操作数据库
- Vue项目中v-for无法渲染数据
- WUSTOJ 1282: Start(Java)