文档章节

iOS编程中常用的代码

暴走艾尼玛
 暴走艾尼玛
发布于 2016/01/04 19:15
字数 383
阅读 19
收藏 0
dispatch_async(dispatch_get_global_queue(0, 0), ^{
    //加入耗时操作
    ...
    dispatch_async(dispatch_get_main_queue(), ^{
        //更新UI操作
        ...
    });
     
});

多线程和结束后的更新UI操作


[username_text setValue:[UIColor colorWithRed:1 green:1 blue:1 alpha:0.5] forKeyPath:@"_placeholderLabel.textColor"];

修改输入框PlaceHolder的默认颜色


页面上移解决文本框被键盘弹出挡住的问题

//textfield的函数
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
    [username_text resignFirstResponder];
    [password_text resignFirstResponder];
    // When the user presses return, take focus away from the text field so that the keyboard is dismissed.
    NSTimeInterval animationDuration = 0.30f;
    [UIView beginAnimations:@"ResizeForKeyboard" context:nil];
    [UIView setAnimationDuration:animationDuration];
    CGRect rect = CGRectMake(0.0f, 0.0f, self.view.frame.size.width, self.view.frame.size.height);
    self.view.frame = rect;
    [UIView commitAnimations];
}
 
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
    // When the user presses return, take focus away from the text field so that the keyboard is dismissed.
    NSTimeInterval animationDuration = 0.30f;
    [UIView beginAnimations:@"ResizeForKeyboard" context:nil];
    [UIView setAnimationDuration:animationDuration];
    CGRect rect = CGRectMake(0.0f, 0.0f, self.view.frame.size.width, self.view.frame.size.height);
    self.view.frame = rect;
    [UIView commitAnimations];
    [textField resignFirstResponder];
    return YES;
}
 
 
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
    CGRect frame = password_text.frame;
    int offset = frame.origin.y + 32 - (self.view.frame.size.height - 216.0);//键盘高度216
    NSTimeInterval animationDuration = 0.30f;
    [UIView beginAnimations:@"ResizeForKeyBoard" context:nil];
    [UIView setAnimationDuration:animationDuration];
    float width = self.view.frame.size.width;
    float height = self.view.frame.size.height;
    if(offset > 0)
    {
        CGRect rect = CGRectMake(0.0f, -offset,width,height);
        self.view.frame = rect;
    }
    [UIView commitAnimations];
}

iOS获取app版本号  plist文件

versionLabel.text = [NSString stringWithFormat:@"v%@", [[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString*)kCFBundleVersionKey]];

tableView的增加,删除,刷新,更新的方法

NSIndexPath *index = [NSIndexPath indexPathForRow:1 inSection:0];
//插入某一行
[self.tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:index] withRowAnimation:
 UITableViewRowAnimationNone];
//插入某一分区
[self.tableView insertSections:[NSIndexSet indexSetWithIndex:1] withRowAnimation:UITableViewRowAnimationNone];
//删除某一行
[self.tableView removeRowsAtIndexPaths:[NSArray arrayWithObject:index] withRowAnimation:UITableViewRowAnimationNone];
//删除某一分区
[self.tableView removeSections:[NSIndexSet indexSetWithIndex:1] withRowAnimation:UITableViewRowAnimationNone];
//刷新某一行
[self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:index] withRowAnimation:UITableViewRowAnimationNone];
//刷新某一分区
[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:1] withRowAnimation:UITableViewRowAnimationNone];
//更新某一行
[self.tableView updateRowsAtIndexPaths:[NSArray arrayWithObject:index] withRowAnimation:UITableViewRowAnimationNone];
//更新某一分区
[self.tableView updateSections:[NSIndexSet indexSetWithIndex:1] withRowAnimation:UITableViewRowAnimationNone];
//刷新整个tableview
[self.tableView reloadData];


© 著作权归作者所有

暴走艾尼玛
粉丝 1
博文 36
码字总数 10397
作品 0
深圳
私信 提问
开源中国 iOS 开发专区改版上线

开源中国 iOS 开发专区改版上线了,新版本在原有的文章分类基础上增加了 iOS 开发中常用的各种开源控件,并对这些控件进行了分类以及截图。 访问新版 iOS 开发专区 http://www.oschina.net/i...

oschina
2012/08/07
3.2K
17
10个优秀Objective-C和iOS开发在线视频教程

如果你自己开发iOS应用,你肯定会发现网上有很多资源。学习编程的一个最好的方法就是自己写代码,而开始写代码的最快的方式就是看其他人怎么写。我们从海量视频和学习网站中整理出了我们认为...

mingxun
2014/05/09
0
0
2018 iOS 面试题大全(补充完整版)

原文地址:2018 iOS 面试题大全 由于原作者并没有继续更新,这里我转过来继续更新下 这个栏目将持续更新--请iOS的小伙伴关注! 1、iOS 应用导航模式有哪些? 2、iOS 中持久化方式有哪些? 3、...

Theendisthebegi
2018/11/15
0
0
实现 iOS 上的井字游戏

下载 demo - 70.1 KB 简介 本文介绍如何用 MVC 模式在 iOS 上实现双人对战的井字游戏. 读者最好有一些 iOS 编程基础, 以便更好的理解本文的代码. 希望这篇文章对提高读者的 iOS 和 MVC 编程水...

oschina
2014/11/09
2.5K
4
iOS开发技巧:应用宏定义使用字体

在iOS应用App开发中,常常需要对视图、控件的字体、字号进行设置,需要逐一设置,当界面一旦多的时候,如果需要对字体设置进行修改,既是一件麻烦的工作,也容易遗漏,造成代码不一致。解决这...

鉴客
2012/01/09
3.4K
0

没有更多内容

加载失败,请刷新页面

加载更多

MySql双主架构原理

在企业中,一般系统架构的瓶颈会出现在数据库这一部分,mysql主从架构在很大程度上解决了这部分瓶颈,但是在mysql主从同步的架构也存在很多问题;比如:1.关于数据写入部分(也就是主库)往往很难做...

xiaomin0322
12分钟前
0
0
分布式系统中一致性哈希

问题场景 近年来B2C、O2O等商业概念的提出和移动端的发展,使得分布式系统流行了起来。分布式系统相对于单系统,解决了流量大、系统高可用和高容错等问题。功能强大也意味着实现起来需要更多...

Java领航员
14分钟前
0
0
接口限流算法:漏桶算法和令牌桶算法

漏桶算法 漏桶可以看作是一个带有常量服务时间的单服务器队列,如果漏桶(包缓存)溢出,那么数据包会被丢弃。这一点和线程池原理是很相似的。 把请求比作是水,水来了都先放进桶里,并以限定...

铁骨铮铮
21分钟前
1
0
Android 生成二维码工具类

/** * 生成条形码和二维码的工具 */public class ZXingUtils { /** * 生成二维码 要转换的地址或字符串,可以是中文 * * @param url * @param width ...

lanyu96
26分钟前
1
0
谈谈lucene的DocValues特性之SortedNumericDocValuesField

前面已经介绍过NumericDocValuesField,这里想强调一下SortedNumericDocValuesField是针对同一篇文档中一键多值的情况进行排序的,换句话说不同文档的同一字段值可以乱序。核心的写入流程与谈...

FAT_mt
34分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部