编程学习易错点
邵琼
德育为先!
能力为重!
展开
-
iOS视图控制器总结
//控制器: UINavigationController(有层级关系, 一般:都是这一页进入下一页),栈管理(push, pop, 一般都是 self.navigation push ) UITabBarController(并列关系, 微信, QQ 页面, 下面都有很多的按钮, 是放在UITabBarController管理的页面的 viewController 中.); 没有关系:模态切换(一原创 2016-01-16 22:38:22 · 468 阅读 · 0 评论 -
5种传值方式
//1.传值方式 //1.属性传值: 从前一个页面向后一个页面传值 //a.在后一个页面, 根据传值的类型和个数, 写属性 //b.在前一个页面, 为属性赋值 //c.在后一个页面, 使用值 //2.代理传值: 从后一个页面向前一个页面传值 //后一个页面(找代理) //a. 制订协议 //b. 写delegate 属性 //c.原创 2016-01-11 23:01:58 · 1540 阅读 · 0 评论 -
UITabBarController
#import "RootViewController.h"#import "FirstViewController.h"#include "SecondViewController.h"#import "ThirdViewController.h"#import "FourthViewController.h"#import "FifthViewController.h"#import原创 2016-01-12 12:18:50 · 444 阅读 · 0 评论 -
iOS 编程中用的最多的 tableView相关技术
1.dataSource - 懒加载 - 助手类的封装 - 可视化直接写代理的回调即可(分区,行数, cell 展示) 2.navigationController 有 pop, 与 push 的方法3.插入数据到单元格——NSindexPath *indexPath = [NSindexPath indexPathForRow:self.dataSource.count - 1 inSec原创 2016-03-17 22:59:27 · 355 阅读 · 0 评论 -
请求图片错误
请求图片时容易出现此错误 UIButton *avatarButton = [UIButton buttonWithType:UIButtonTypeCustom]; [avatarButton setImageWithURL:[NSString stringWithFormat:@”http:xxx.png”]];//错误 [avatarButton setImageWithURL:[NSU原创 2016-03-31 13:47:58 · 437 阅读 · 0 评论 -
学习编程小技巧
出现问题, 崩溃…… 1.首先, 你的要有思路, 一个项目,某个模块, 某个页面的控件如何布局. 2.如果出现了问题, 找到问题.后台会有打印; 如果还不知道, 就去百度原因.iOS:First throw call stack的解决方法 这时候,我们可以把把异常抛出来看。 第一步: - (BOOL)application:(UIApplication )application原创 2016-03-31 13:57:18 · 340 阅读 · 0 评论 -
为什么重写 description 方法
重写description方法description方法的默认实现是返回类名和对象的内存地址,这样的话,使用NSLog输出OC对象,意义就不是很大,因为我们并不关心对象的内存地址,比较关心的是对象内部的一些成变量的值。因此,会经常重写description方法,覆盖description方法的默认实现 比如,重写Student的description方法,返回成员变量_age的值原创 2016-02-24 12:23:34 · 270 阅读 · 0 评论 -
iOS之懒加载
懒加载的格式:@property (nonatimic, strong)NSMutableArray *dataSource;- (NSMutableArray *) dataSource { if (_dataSource == nil) { self.dataSource = [NSMutableArray array]; } return _dataSourc原创 2016-03-11 08:22:29 · 424 阅读 · 0 评论 -
TableView 确认选中了哪一行
当我们点击某个cell时,会执行下面这个方法,方法中调用另一方法执行具体操作:- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { if (0 == indexPath.section) { [self btnActionForUserSett原创 2016-02-27 11:23:29 · 1077 阅读 · 0 评论 -
iOS之旅-越过坑点
cell 展示的时候, cell.textTitle = [NSString stringWithFormat:%@, self.listArray objectAtIndexPath:index.row]单例NSUserDefault, 用于存储用户设置, 注意: 读取与保存的 key标识要一样一个控制器中, 如果大家都想取到它(1, 设置成属性,首选; 2, 设置成全局)tableVie原创 2016-04-06 21:17:39 · 397 阅读 · 0 评论 -
block存储位置问题
// MRC 环境下: // 1 NSGlobalBlock, 静态区 /* // 没有引入任何局部变量|全局变量 | static 变量 // block 位于全局静态区, 不需要我们管理, 程序运行完,系统回收 // a 为静态变量, 存于全局静态区, block 函数内部没有引入任何局部变量(包括对象) stat原创 2016-04-07 11:12:43 · 781 阅读 · 0 评论 -
属性传值(一个页面切换到下一个页面, 值的传递)
FirstViewController *firstVC = [[FirstViewController alloc] init]; UINavigationController *navigation = [[UINavigationController alloc] initWithRootViewController:firstVC]; //半透明度默认为 no nav原创 2016-01-11 13:07:20 · 2241 阅读 · 0 评论 -
文章标题
每日一考以及注意点: day1: 系统的认识(前天晚上讲的内容) && c 语言数据类型 a+=a-=a*a a = (a + a-=a*a) 括号内:a = a - a*a () 定义的类型, 最后输出格式要一致;double x, y; x = 1; y = x + 3 / 2;最后,y = 2.0, 可以再电脑上运行day2: c语言分支结构 1.逻辑运算符中,非0即原创 2015-12-27 19:24:59 · 322 阅读 · 0 评论 -
编程易错点
托运行李分为快件和慢件两种 快件是随自己所乘坐的列车或到达时间与这趟列车最接近的同一路线的其它列车运走的行李。对于旅客来说,快件托运速度快,人到行李就到了,不影响自己的使用。但是托运的费用也相对较高些,一些急需的又不是太重的物品,适合于快件托运。 慢件是按照列车货物运输的程序,通过列车的合理编组,在一定日期内将物品运到目的地的一种托运方式。慢件托运的一个突出特点就是价格比较低,运量可以很大,但运原创 2015-12-27 19:27:55 · 619 阅读 · 0 评论 -
oc考试题
一、选择题(共80题,每题1分)1、 不会立刻使引用计数器改变的是: 答案:(C) A、release B、alloc C、autorelease D、retain2、 在OC中类的接口声明关键字为: 答案:(B) A、@import B、@interface C、@implemention D、@protocol3、 NSString *name = [[转载 2015-12-27 19:30:03 · 1182 阅读 · 0 评论 -
编程易错点每日一记
2016.1.2 day18 self.属性 每次都会调用@proper 以及每次都会改变一次(学会调试) 设计的程序要有封装性, 最好写在.m中. 在main.m中只要调用一下就ok了. 一个项目, 最主要是掌握好需求, 然后, 直到流程.-> 装换成代码 嵌套中快速枚举(forin); 如果是数组删除, 最好别用, 因为快速枚举就是先制定好了容器的大小, 之后是不可以在改变. 然而字典原创 2016-01-09 14:49:14 · 359 阅读 · 0 评论 -
字符串
一:**关于获取子字符串(是否包含当前字符串)的易错问题:**常用的很多方法, 大部分都是对象调用(也就是-号方法), 一般初始化(会涉及到用类调用方 法) . 获取子字符串常用, 常用对象去调用substringWithRange:(NSRange)方法; 其中,NSRange是一个结构体, 可以通过NSMakeRange(位置, 长度).注意:字符串下标是从0开始的 1. [stri原创 2015-12-28 13:16:50 · 422 阅读 · 0 评论 -
类封装
#import <Foundation/Foundation.h>#import "Teacher.h"#import "Student.h"#import "OurClass.h"int main(int argc, const char * argv[]) { @autoreleasepool { //在MRC手动释放环境下(注意, 属性一般写成copy, 不可改变; (1原创 2015-12-28 18:25:21 · 561 阅读 · 0 评论 -
学生, 教师封装的类
/* 实现班级信息程序 1、定义3个类:OurClass、Teacher、Student。 2、Teacher类,属性:姓名、年龄、班级,⽅方法:考试(exam:)。 3、Student类,属性:姓名、年龄、学号、成绩,⽅方法:⽐比较年龄。 4、OurClass类,属性:⽼老师、学⽣生,⽅方法:添加学⽣生和移除学⽣生。 提⽰示: 1、Person类作为Student、Teacher类的原创 2015-12-28 22:13:03 · 1377 阅读 · 1 评论 -
forin用法
以forin的方式遍历数组时进行删除操作的注意点今天在修改某项需求的时候,需要在遍历的时候将匹配项移除掉,采用的时forin的方式遍历,然后运行的时候却crash掉了for (NSString*str in self.btnArray) { if ([imageName isEqualToString:str]) { [self.btnArray remove转载 2016-01-01 17:49:16 · 1361 阅读 · 0 评论 -
关灯游戏
#import "RootViewController.h"@interface RootViewController () <UIAlertViewDelegate>@property (nonatomic, retain) NSArray *mapArray;@end@implementation RootViewController- (void)dealloc{ [_mapArra原创 2016-01-10 10:30:00 · 384 阅读 · 0 评论 -
可以循环播放, 所放的的相册
#import "AlbumPlusViewController.h"#define kwidth [UIScreen mainScreen].bounds.size.width#define kheight [UIScreen mainScreen].bounds.size.height@interface AlbumPlusViewController () <UIScrollViewDele原创 2016-01-10 21:18:17 · 635 阅读 · 0 评论 -
文章标题
每天都当成是生命的最后一天 渴望度需要改变1: 0.代码规范 1.演讲的时间把握; 2.早起 3.团队精神, 帮助他们, 提高打字效率 1.早起,卫生,跑步; 安全意识(观念问题: 爱自己, 爱家人, 爱社会)1.早起! 6点40起床! 跑步!!!! 爬楼梯 午睡一会儿! 晚上不玩手机! 回想今天有设么收获以及需要改变的地方!1.中午需要休息一会儿 2.看新闻 3原创 2015-12-27 19:27:12 · 489 阅读 · 0 评论 -
NSTimer 的使用
NSTimer的使用方法1、初始化(NSTimer *)timerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)yesOrNo;(NSTimer *)scheduledTimerWithTimeInterval:(原创 2016-04-07 12:13:49 · 531 阅读 · 0 评论