【问题标题】:How to add pull tableview up to refresh data inside the uitableview如何添加拉表视图以刷新 uitableview 内的数据
【发布时间】:2013-05-31 07:41:53
【问题描述】:

我知道如何将下拉刷新添加到视图控制器中。但现在的情况是:我有一个 UIView & 包含一个 UITableView 并且我想将 table view 拉到 tableview 的最底部以重新加载它的数据。

如何在 UITableView 中添加下拉刷新,而不是它的父视图的控制器。

【问题讨论】:

  • 你是否尝试在 iOS 6 中实现它?
  • 查看此代码https://github.com/enormego/EGOTableViewPullRefresh
  • 可以使用子表视图控制器吗?

标签: iphone ios uitableview uiviewcontroller


【解决方案1】:

在你的 ViewDidLoad 添加这个:

UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
[refreshControl addTarget:self action:@selector(refresh:) forControlEvents:UIControlEventValueChanged];
[self.myTableView addSubview:refreshControl];

然后刷新

- (void)refresh:(id)sender
{
// do your refresh here and reload the tablview
}

【讨论】:

  • 布拉瓦。如果需要,我们也可以使用一些 UITableViewController。
  • @vin 然后你会如何告诉刷新操作停止? (你会运行什么代码?)
  • @playbasegames 你可以使用 endrefreshing 方法停止
  • 这个方法不会通过上拉tableView刷新,只能下拉刷新。
  • 我同意 Bot 和 rilar
【解决方案2】:

很简单:取一个UIScrollView,在里面取UITableview,放在UITableView的底部,然后写Scrollview委托方法

    #pragma mark -
    #pragma mark - Scroll View Delegate Method

    - (void) scrollViewDidScroll:(UIScrollView *)scrollView {

        if (scrollView == scrollObj) {
            CGFloat scrollPosition = scrollObj.contentSize.height - scrollObj.frame.size.height - scrollObj.contentOffset.y;
            if (scrollPosition < 30)// you can set your value
            {
                if (!spinnerBottom.isAnimating) {
                    [spinnerBottom startAnimating];
                    [self YourPUllToRefreshMethod];
                }
            }
        }
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-06
    • 2018-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多