一些零碎知识积累

1、NSuserdefault存值取值的方便之处。

2、搭建框架时,程序首次运行以及记忆已登陆账号密码均用到NSuserdefault

3、比如构建一个UI界面时(以登陆后的用户界面为例),要实现这样的一个UI时,比较方便的是:针对于界面所要展示的参数(比如用户ID、用户密码等等)构建Model,比较方便于各个类的调用!

4、项目打包完成后要先检验(verified),确认没有错误后在导出或者发布(distribute)。

5、发布的项目如果面向中国大陆,一般默认语言选择:简体中文。

6、关于textview中placeholder问题:在textview中添加一个label实现

7、关于类中定义的方法参数类型为:(id)sender的,其中sender可以代表任意类型的“量”(比如:button.tag,tableview的某行等等)。

8、可以有这样的语句:if()

return;

9、几个第三方类:libWeiboSDK(项目中有需要用到微博的),AFNetworking(目前比较流行的网络请求方式),QRadioButton(自定义按钮类型的第三方类),TableViewRefresh(关于表格刷新的类),TSMessages(网络请求失败时显示自定义信息的类)。

10、发布app到商店时,rating一定要根据项目本身情况来定。

11、今天因为个问题纠结了一整天 一直到下班才解决

不用xib去实现一个 tableview 

但是一直没有去执行cellForRowAtIndexPath这个方法

列表能显示出来也能拖动 但是没法设置cell的属性

找了一天原因 网上的帖子也查了一很多

最后发现是 tableView的另一个@required方法 

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;

 

这个方法如果返回值不正确的话 就不会执行 cellForRowAtIndexPath

12、协议也叫代理(delegate)就是在自己的类.h中声明一些方法,然后并没有在自己的.m文件中实现,而是由其他“包含该协议(代理)”的类实现,这些方法分为两张:必须实现和非必须实现的!

13、下载gpx文件地址:

http://www.cocoachina.com/applenews/devnews/2014/0528/8587.html

Xcode中选中指定target,按以下菜单层次进入:

1.     Edite Scheme -->  Options -->  Default Location -->  Add GPX File to Project 

(此时必须保证Allow Location Simulation选项是选中的,该设置项默认选中。)

 

如图所示:




 

即可将刚才生成并下载到本地的GPX文件添加到工程里。从此以后不管是重新run程序还是重启模拟器都可以在程序启动的时候定到位。

 

不过这种做法有个缺点,我在实际使用的时候发现设置完Default Location以后,真机的位置信息也会被更改成设置的位置(只是第一次运行真机会被更改位置,以后便不会再更改位置,不过利用真机测试时,将gpx文件删除是比较好的。)!!!还请记得在软件发布时删除该设置项。

 

 

 

14、http://wenku.baidu.com/link?url=1ljPFY5kKua8KKMa7CuAlo61kync_dPdwvocTmAG4HlAL3U-D6Mu1fvLGzo6px67_4MuBDLeT-4AdN5Qld7ZWBZOb-pAcs3hXgAiaDfGcW_(真机测试步骤)

 

15、关于TabBarItem切换问题

总共有3TabBarItem

如何从一个TabBarItem对应的ViewController中的一个按钮点击跳到另一个 TabBarItem对应的ViewController呢?

 

self.tabBarController.selectedViewController = UIViewController-YouWantex:

self.tabBarController.selectedViewController= [self.tabBarController.viewControllers objectAtIndex:2];

 

16http://blog.csdn.net/mad2man/article/details/12939955图片压缩网址

 

17一次性移除一个 UIView 所有子视图的方法  :

  for(UIView *view in [self.view subviews]){  

       [view removefromsuperview]

  }

点击一个按钮,产生两个view切换的效果:先[view1 removefromsuperview],然后[self.view addsubview:view2]即可!

 

18、UIScroView的contentSizecontentInsetcontentOffset区别

contentSize: 是scrollview中的一个属性,它代表scrollview中的可显示区域,假如有一个scrollview,它的frame为(0,0,320,480),而它的contentSize为(320,960).也就是说,这个scrollview整个内容的大小为(320,960),要通过上下滑动scrollview来查看(320,480)后的内容。

 

contentOffset:是scrollview当前显示区域顶点相对于frame顶点的偏移量,比如上个例子你拉到最下面,contentoffset就是(0 ,480),也就是y偏移了480

 

contentInset :是scrollview中contentView.frame.origin与scrollview.frame.origin的关系,比如contentView的frame为(0,30,320,480),那么contentInset则为(0, 30),

 

19、textField弹回键盘

-(BOOL)textFieldShouldReturn:(UITextField*)textField

{

    [textField resignFirstResponder];

    return YES;

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值