做购物网站要多少钱,上海市网站设计公司,app开发一般收费,怎么做无货源网店安装开发环境
安装Xcode软件
历史版本查找 https://developer.apple.com/download/all/?qdebug
创建Object-C项目
启动过程
步骤 1.加载Main中定义的storyBoard 2.加载Main控制器 3.加载控制器下的View组件显示
获取控件的两种方式
定义属性连线#xff1a;property (…安装开发环境
安装Xcode软件
历史版本查找 https://developer.apple.com/download/all/?qdebug
创建Object-C项目
启动过程
步骤 1.加载Main中定义的storyBoard 2.加载Main控制器 3.加载控制器下的View组件显示
获取控件的两种方式
定义属性连线property (weak, nonatomic) IBOutlet UIView *topView;
标签获取ViewWithTag效率低
第一个APP
定义头文件 import UIKit/UIKit.h
2.定义界面属性 #pragma mark 主页欢迎词property (nonatomic,weak)IBOutlet UILabel *lableHello;
3.定义函数 #pragma mark 开始按钮点击界面- (IBAction)LoginClickEvent{NSLog(%s,__func__);printf(__func__);self.lableHello.textColor UIColor.redColor;self.lableHello.text Hello Ciara;self.lableHello.font [UIFont systemFontOfSize:20.f];self.lableHello.backgroundColor[UIColor yellowColor];}
运行项目 基础语法
Objective-C最大的特色是承自Smalltalk的消息传递模型message passing
定义函数不同 面向对象式
obj.method(argument)消息传递式
[obj method : argument]将method转递给obj运行时处理如果传递nil 不做处理
创建字符串
NSString* myString My String\n;
NSString* anotherString [NSString stringWithFormat:%d %s, 1, String];
NSString* fromCString [NSString stringWithCString:A C string
encoding:NSASCIIStringEncoding];按钮操作
//设置title
[self.loginBtn setTitle:Logout forState: UIControlStateNormal];
view操作
ViewController生命周期
loadView 每次访问controller的view(比如controller.view、self.view)且view为nilloadView方法就会被调用。用于创建Controller的View使用super调用父方法viewDidLoad 1.系统调用 加载完成后调用View
2.空间初始化、数据初始化、懒加载
3.在视图加载后被调用如果是在代码中创建的视图加载器他将会在loadView方法后被调用如果是从nib视图页面输出他将会在视图设置好后后被调用。只会被调用一次之后进入这个ViewController不调用此函数 viewWillAppear: 视图将要显示 viewWillLayoutSubviews 控制器的view将要布局子控件(在这个方法里部署需要改变重新刷新view的代码功能类似view的layoutSubViews()这个方法需要注意的是这个方法里一般都需要重置的view的frame,宽度和高度的获取因此view的frame一般都写在这个方法里) viewDidLayoutSubviews 控制器的view布局子控件完成 viewDidAppear: 视图已经显示,父空间window显示 viewWillDisappear: 视图将要消失 viewDidDisappear: 视图已经消失在Controller被切换时调用第二个视图出现后第一个视图消失 didReceiveMemoryWarning 1.系统调用内存警告时调用
2.去除不必要的内存、耗时内存
基本属性
左上角为原点 fream 父控件中的位置与尺寸 bounds控间本身的位置和尺寸 中心点不变 四周延伸 center 控件点的位置 中心点的位置
动态添加控件
- (void)viewDidLoad {[super viewDidLoad];self.username;//添加文本UILabel *lb[[UILabel alloc] init];[lb setText:更换主题];[lb setFrame:CGRectMake(5, 0, 400, 40)];[self.topView addSubview:lb];//添加开关UISwitch *sw [[UISwitch alloc] init];[sw setFrame:CGRectMake(200, 0, 200, 40)];[self.topView addSubview:sw];//添加多选框UISegmentedControl *sc [[UISegmentedControl alloc] initWithItems:[yellow,red,Green]] ;[sc setFrame:CGRectMake(5, 55, 300, 40)];[self.topView addSubview: sc];//设置控件位置[self.topView setCenter:CGPointMake(self.view.frame.size.width/2, self.view.frame.size.height/2) ];}- (void) viewDidAppear:(BOOL)animated{[super viewDidAppear:animated];//操作 当前页面的父控件只能在此方法获取到父控件UIwindow}
附录
教学视频 https://www.bilibili.com/video/BV1MF411h7SG/?p4spm_id_frompageDrivervd_source38863a419514cab0ef6abb1aa88f9a79