当前位置: 编程技术>移动开发
本页文章导读:
▪新浪微博第三方绑定并做操作的方法 新浪微博第三方绑定并做操作的步骤1、先去官方申请应用的app key和回调页
2、去官方下载SDK和文档(文档名字:weibo_android_sdk-master)
3、进入MainActivity修改CONSUMER_KEY对应的app key 和REDIRECT_URL.........
▪ 关于Objective-C 对象release操作的一个小疑点探讨 关于Objective-C 对象release操作的一个小问题探讨最近遇到这样一个问题,以前的时候并未注意;新建一个工程,然后添加一个类,文件结构是这样的
然后写了这样一小段程序,运行
- (void)v.........
▪ 设立标题AlignmentCenter 设置标题AlignmentCenter原问题来自于CSDN问答频道,更多见:http://ask.csdn.net/questions/1957
问题描述:
下面的代码是用来设置tableView头标题,默认的text是AlignmentLeft。怎么设置为AlignmentCenter?
- (NSSt.........
[1]新浪微博第三方绑定并做操作的方法
来源: 互联网 发布时间: 2014-02-18
新浪微博第三方绑定并做操作的步骤
1、先去官方申请应用的app key和回调页
2、去官方下载SDK和文档(文档名字:weibo_android_sdk-master)
3、进入MainActivity修改CONSUMER_KEY对应的app key 和REDIRECT_URL对应回调页
4、注意com.weibo.sdk.android.api这个包里都是api,可以直接调用,对应的是官方的文档http://open.weibo.com/wiki/API%E6%96%87%E6%A1%A3_V2#.E5.BE.AE.E5.8D.9A 需要的做的事这里都可以一一对应(比如发微博消息,发照片,绑定某人)。
例如关注某用户:先在官方文档中找到关注某用户friendships/create,找到后再去api中调用找friendships这个类里面的create这个方法即可,官方还给出了一个发送微博的例子:
发带图片的微博
[2] 关于Objective-C 对象release操作的一个小疑点探讨
来源: 互联网 发布时间: 2014-02-18
关于Objective-C 对象release操作的一个小问题探讨
最近遇到这样一个问题,以前的时候并未注意;新建一个工程,然后添加一个类,文件结构是这样的
然后写了这样一小段程序,运行
- (void)viewDidLoad { [super viewDidLoad]; Test *testObj = [[Test alloc] init]; NSLog(@"release 前 %d",[testObj retainCount]); [testObj release]; NSLog(@"release 后 %d",[testObj retainCount]); }
明明release了,retainCount计数应该为0,但是 为什么retainCount计数还是1,当我们release操作两次的时候程序就崩溃了;
然后我们打印一下testObj对象
- (void)viewDidLoad { [super viewDidLoad]; Test *testObj = [[Test alloc] init]; NSLog(@"release 前 %d",[testObj retainCount]); NSLog(@"testObj release指向-->%@",testObj); [testObj release]; NSLog(@"release 后 %d",[testObj retainCount]); NSLog(@"testObj release指向-->%@",testObj); }
发现他们指向同一块地址;
testObj 在alloc的时候在堆上申请到一片空间,然后它的retainCount计数为1,然后我们release之后,testObj指向的空间被销毁了,不存在了。此时testObj就是一个野指针了;此时我们调用[testObj retainCount]就属于一个不安全的做法;
然后我们在添加一行代码,[testObj release]之后,添加 testObj = nil;
- (void)viewDidLoad { [super viewDidLoad]; Test *testObj = [[Test alloc] init]; NSLog(@"release 前 %d",[testObj retainCount]); NSLog(@"testObj release指向-->%@",testObj); [testObj release]; testObj = nil; NSLog(@"release 后 %d",[testObj retainCount]); NSLog(@"testObj release指向-->%@",testObj); }
唉,看到这里就应该明白了吧,[testObj release] 后,testObj仍有指向,只是testObj原来指向的那片空间已被销毁,但是本身还存在,通过置为nil这一步操作,就不在指向原来那片地址;应该记起viewDidUnload函数作用了吧,它就是干这个活的,我们申明一个对象属性的时候,在viewDidUnload中将这个属性置为nil这一步操作;
[3] 设立标题AlignmentCenter
来源: 互联网 发布时间: 2014-02-18
设置标题AlignmentCenter
设置标题的默认高度:
原问题来自于CSDN问答频道,更多见:http://ask.csdn.net/questions/1957
问题描述:
下面的代码是用来设置tableView头标题,默认的text是AlignmentLeft。怎么设置为AlignmentCenter?
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section { if(section==0){ return NSLocalizedString(@"more_titlehead_one", nil); }else if (section==1){ return NSLocalizedString(@"more_titlehead_two", nil); }else{ return NSLocalizedString(@"more_titlehead_three", nil); } }
:
试试如下:
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { UILabel * sectionHeader = [[[UILabel alloc] initWithFrame:CGRectZero] autorelease]; sectionHeader.backgroundColor = [UIColor clearColor]; sectionHeader.textAlignment = UITextAlignmentCenter; sectionHeader.font = [UIFont boldSystemFontOfSize:10]; sectionHeader.textColor = [UIColor whiteColor]; if(section == 0) { sectionHeader.text = @"TITLE ONE"; } else if(section == 1) { sectionHeader.text = @"TITLE TWO"; } else { sectionHeader.text = @"TITLE OTHER"; } return sectionHeader; }
设置标题的默认高度:
- (CGFloat)tableView:(UITableView *)tableViewheightForHeaderInSection:(NSInteger)section { if(section == 0) { return 20.0; } else if(section == 1) { return 20.0; } else { return 20.0; } }
最新技术文章: