标签: uirefreshcontrol

UIRefreshControl和UITableView的backgroundVIew

我有一个UITableViewController,我在其上设置了backgroundView.该控制器安装了UIRefreshControl.问题是,当我设置背景视图时,刷新控件是不可见的.如果我删除背景视图,我可以看到刷新控件.

难道我做错了什么?

ios uirefreshcontrol

29
推荐指数
1
解决办法
7415
查看次数

使用UIRefreshControl在TableView中移位的标题

我的UIRefreshController正在做一些奇怪的事情.当我下拉刷新时,tableView标头被移位.

如果我下拉它看起来不错,但如果我向下滚动表时,复习仍在工作,头被刷新控制的高度,而UITableCells是罚款和滚动头之后偏移.

http://oi49.tinypic.com/2a8hqti.jpg

http://oi46.tinypic.com/acssrb.jpg

我想避免创建一个tableViewController,所以我在viewDidLoad中执行以下操作:

_refreshControl = [[UIRefreshControl alloc] init];
[_refreshControl addTarget:self action:@selector(refresh) forControlEvents:UIControlEventValueChanged];
[_tableView addSubview:_refreshControl];
Run Code Online (Sandbox Code Playgroud)

我在不同的视图控制器中有很多表需要这个功能.有什么方法可以避免为每个人制作一个UITableViewController吗?

万分感谢!

objective-c uitableview ios uirefreshcontrol

28
推荐指数
2
解决办法
9308
查看次数

抵消UIRefreshControl

我目前正在为我的应用程序使用JASidePanel,我有一个带UIRefreshControl的UITableViewcontroller作为它的ViewControllers之一.我的tableview的宽度仍然是320像素的宽度,因此UIRefreshControl在视图中间居中.我想弄清楚是否有办法偏移UIRefreshControl(将x向左移动20个像素),这样当我的侧面板可见时它看起来居中.

谢谢! JASidePanel

ios ios6 uirefreshcontrol

26
推荐指数
4
解决办法
2万
查看次数

在UITabBarController中切换选项卡后,UIRefreshControl卡住了

我有一个UITableViewController作为UINavigationController中的根视图控制器,UINavigationController又是UITabBarController中的一个视图控制器.所有人都在故事板中.

我也在Storyboard中为我的表配置了UIRefreshControl,通常看起来应该在拉动时:

正常的UIRefreshControl

但是,如果我在其他标签之间切换一次或两次,它看起来像这样:

越野车UIRefreshControl

它不是旋转或任何东西,只是卡住"满",它一直保持这种状态,直到我完全拉动并触发刷新.

任何想法或建议都会欣赏.

iphone refresh objective-c ios uirefreshcontrol

26
推荐指数
3
解决办法
7276
查看次数

UITefresh控件位于UITableView iOS6的底部?

是否有可能添加UIRefreshControl到底部UITableView?我会用它来加载更多数据.请问,有什么建议吗?

uitableview ios6 uirefreshcontrol

25
推荐指数
4
解决办法
1万
查看次数

viewDidLoad上的UIRefreshControl

我正在使用以下代码来创建UIRefreshControl:

- (void) viewDidLoad
{
    [super viewDidLoad];

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

- (void) doLoad
{
    dispatch_async(dispatch_get_global_queue(0, 0), ^{
            // Instead of sleeping, I do a webrequest here.
            [NSThread sleepForTimeInterval: 5];

            dispatch_async(dispatch_get_main_queue(), ^{
                [tableView reloadData];
                [self.refreshControl endRefreshing];
            });
    });
}
Run Code Online (Sandbox Code Playgroud)

它很棒.如果我导航到我的视图,请拖动表格,代码运行并显示数据.

但是,我想要做的是在视图出现时将视图置于"加载"状态(这样用户知道某些事情正在发生).我尝试添加以下内容:

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    [self.refreshControl beginRefreshing];
}
Run Code Online (Sandbox Code Playgroud)

但它似乎没有用.当我导航到视图时,它看起来像一个常规视图(刷新控件不可见),当我尝试拉动刷新控件时,它从未完成加载.

显然我会以错误的方式解决这个问题.关于我应该如何处理的任何建议?

uitableview ios uirefreshcontrol

25
推荐指数
2
解决办法
2万
查看次数

如何以编程方式向下滑动UITableView以显示底层的UIRefreshControl

当我以编程方式更新表时,如何显示UIRefreshControl?使用[self.refreshControl beginRefreshing]使微调器具有动画效果,但不会显示它.

uitableview ios6 uirefreshcontrol

23
推荐指数
4
解决办法
1万
查看次数

UIRefreshControl由我的UINavigationController的UINavigationBar隐藏/隐藏

我试图使用一个UIRefreshControl内部我UITableViewController自己在里面UINavigationController,它的hidesNavigationBar属性设置为NO(所以导航栏是可见的).

UIRefreshControl作品,但被掩盖UINavigationBar.我很惊讶我找不到其他遇到这个问题的人.

可能的相关要点:

  • rootViewController认为我UIWindow是我的UINavigationController.
  • UINavigationController通过设置viewControllers属性来设置初始视图控制器UINavigationController.
  • 我的UITableViewController子类用nib实例化.
  • UIRefreshControlviewDidLoad我的UITableViewController子类的方法中实例化我.我在这个方法中设置了子类的refreshControl属性UITableViewController.
  • UIRefreshControl工作完全正常,我可以看到它的一部分,但它是由我的遮蔽UINavigationBar.如果我设置hidesNavigationBarYES(但我不想隐藏它),这看起来完全正常.

编辑:

用于创建和定位我的代码UIRefreshControl是:

UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
[refreshControl addTarget:self 
                   action:@selector(toggleRefresh:) 
         forControlEvents:UIControlEventValueChanged];
self.refreshControl = refreshControl;
Run Code Online (Sandbox Code Playgroud)

这段代码片段在viewDidLoad我的UITableViewController子类的方法中,它是一个子视图控制器UINavigationViewController.

cocoa-touch uitableview uinavigationcontroller ios uirefreshcontrol

18
推荐指数
1
解决办法
7927
查看次数

刷新指示符上的UIRefreshControl文本叠加

我开始使用iOS 7 SDK在XCode 5下进行编程.当我使用'attributedText' 创建UITableViewControllerUIRefreshControl,我已经将文本覆盖在UIRefreshControl图形顶部(圆形进度动画).

但当我拉下并松开手指时,文字会跳到正常位置.为什么会这样?

    UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
    [refreshControl addTarget:self action:@selector(updateDeviceList) forControlEvents:UIControlEventValueChanged];
    refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Update Devices States"];

    self.refreshControl = refreshControl;
Run Code Online (Sandbox Code Playgroud)

在结束之前:

在拉到最后

UIRefreshControl释放:

在UIRefreshControl发布之后

overlay objective-c uirefreshcontrol ios7

18
推荐指数
1
解决办法
9106
查看次数

iOS 10.0 UIRefreshControl未显示指示符

我正在使用一个UITableView,它具有一个下拉刷新功能,但当我调用[self.refreshControl beginRefreshing]时,下拉刷新的微调器没有出现

上面的代码在viewDidLoad中调用,因为表最初正在加载一些数据.如果我在初始刷新后执行下拉刷新,则微调器工作正常.标题显示但不是旋转器.

似乎无法解决这个问题.它适用于iOS 9.3.2,但不适用于iOS 10.

这是我目前使用的代码.

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self setupView];
    [self customSetup];
    self.refreshControl = [[UIRefreshControl alloc] init];
    self.refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Updating Discounts..."];
    [self.refreshControl addTarget:self action:@selector(reloadDeals) forControlEvents:UIControlEventValueChanged];
    [self.refreshControl beginRefreshing];
    [self.tableView setContentOffset:CGPointMake(0, -self.refreshControl.frame.size.height) animated:YES];
}
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助

uitableview ios uirefreshcontrol ios10 ios9.3.2

18
推荐指数
1
解决办法
7606
查看次数