实现水平UIRefreshControl

时间:2013-03-30 21:35:53

标签: iphone ios uirefreshcontrol

如何实现UIRefreshControl,从左侧或右侧拉出时会刷新?

标准UIRefreshControl可以吗?或者是否有任何API来创建此效果?我一直在寻找一些能够获得一些优势,但我找不到任何东西。

所有我能找到的都是this回答SO,但它是用C#写的,我不太熟悉。

2 个答案:

答案 0 :(得分:1)

您可以使用旋转90度的UITableViewController。

在安装过程中在UITableViewController类中添加[self.view setTransform:CGAffineTransformMakeRotation(-M_PI / 2)];

使用UITableView(而不是UITableViewController)的示例:

table_ = [[UITableView alloc] initWithFrame:self.bounds];
[table_ setDelegate:self];
[table_ setDataSource:self];
[table_ registerClass:[UITableViewCell class] forCellReuseIdentifier:@"Cell"];
[table_ setTransform:CGAffineTransformMakeRotation(-M_PI / 2)];

UIRefreshControl *ctrl = [[UIRefreshControl alloc] init];
[ctrl setBackgroundColor:[UIColor yellowColor]];
[table_ addSubview:ctrl];

[self addSubview:table_];

请务必记住以相反的方向再次旋转内容!

答案 1 :(得分:-1)

此处没有默认的refreshcontrol。您必须创建自定义refreshcontrol才能获得此行为。