我一直在使用这个:http://blog.leahculver.com/2010/12/iphone-pull-to-refresh.html在我的应用中制作拉动刷新功能。 但我看不到文字“拉下来刷新......”,“发布刷新......”和“正在加载......”。
我所做的就是将文件复制到我的项目中,链接到QuartzCore框架,并更改了我的视图控制器的.h文件,因此它是PullRefreshTableViewController的子类。然后我添加了刷新方法。
似乎从未执行PullRefreshTableViewController中的initWithStyle方法。 但我应该在我的tableViewcellForRowAtIndexPath。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"CellIdentifier";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
cell.textLabel.text = @"Text";
return cell; }
PullRefreshTableViewController.m中的initWithStyle方法:
- (id)initWithStyle:(UITableViewStyle)style {
self = [super initWithStyle:style];
if (self != nil) {
textPull = [[NSString alloc] initWithString:@"Pull down to refresh..."];
textRelease = [[NSString alloc] initWithString:@"Release to refresh..."];
textLoading = [[NSString alloc] initWithString:@"Loading..."];
NSLog(@"in");
}
NSLog(@"out");
return self; }
日志永远不会在控制台中打印
我真的不知道问题出在哪里了?
答案 0 :(得分:2)
有同样的问题。 想通知不是调用initWithStyle而是调用initWithCoder ....
所以要解决你的问题,请在PullRefreshTableViewController.m中插入以下代码 它就像一个魅力
-(id)initWithCoder:(NSCoder *)aDecoder{
NSLog(@"initWithCoder");
self = [super initWithCoder:aDecoder];
if (self != nil) {
textPull = [[NSString alloc] initWithString:@"Pull down to refresh..."];
textRelease = [[NSString alloc] initWithString:@"Release to refresh..."];
textLoading = [[NSString alloc] initWithString:@"Loading..."];
}
return self;
}
最好的问候
答案 1 :(得分:0)
如果您正在寻找定义文本的位置,它位于PullRefreshTableViewController.m的第43行
希望这会有所帮助(如果确实不忘记我的答案)
微米。
答案 2 :(得分:0)
尝试使用:
实例化PullRefreshTableViewController PullRefreshTableViewController *tableViewController = [[PullRefreshTableViewController alloc] initWithStyle:UITableViewStylePlain];
使用initWithSyle实例化UITableViewCell对UITableViewController子类没有任何影响。
另一种方法是编辑PullRefreshTableViewController类,以与initWithStyle类似的方式覆盖 - (id)init方法: