小编Dav*_*ave的帖子

使用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
查看次数

CGFloat楼到NSInteger

在Xcode中,编译器抱怨以下转换:

CGFloat width = 5.6f; NSInteger num = (NSInteger)floor(width);

说" 从'double'类型的函数调用转换为非匹配类型'NSInteger'(又名'int') "

一个解决方法是简单地将CGFloat强制转换为NSInteger,它会截断,但我希望通过显式地板使代码清晰/易于阅读.是否有返回int的地板功能?或者其他一些(干净的)这样做的方式?

我的编译器设置在"Apple LLVM 6.0 - Compiler Flags"下,在"Other C Flags"中,我有-O0 -DOS_IOS -DDEBUG = 1 -Wall -Wextra -Werror -Wnewline-eof -Wconversion -Wendif-labels -Wshadow -Wbad -function-cast -Wenum-compare -Wno-unused-parameter -Wno-error = deprecated

谢谢!

iphone xcode objective-c ios

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

UICollectionView BatchUpdate边缘情况失败

我在UICollectionView的batchUpdate操作中确定了一个简单的边缘情况,它应该可以工作但是失败了

尝试执行插入并移动到相同的索引路径({length = 2,path = 0 - 2})

我的操作是从[A,B] - > [C,B',A]开始.这是通过更新完成的:

  • 从索引0移动到2
  • 索引1的重新加载
  • 索引为0的插入

显然错误是错误的,插入索引不同于移动TO索引.

我设置了demo以确保这是一个UICollectionView问题,如果你想看到它的运行,这是我的代码:

@implementation ViewController {
  UICollectionView *_collection;
  NSArray *_values;
}

- (instancetype)init
{
  self = [super init];
  if (self) {
    UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
    _collection = [[UICollectionView alloc] initWithFrame:CGRectZero collectionViewLayout:layout];
    _collection.dataSource = self;
    _values = @[@1, @2];
    [_collection registerClass:[UICollectionViewCell class]
      forCellWithReuseIdentifier:@"reuse"];
    [self.view addSubview:_collection];
  }
  return self;
}

- (void)viewDidLoad {
  [super viewDidLoad];
  _collection.frame = self.view.bounds;

  double delayInSeconds = 2.0;
  dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, …
Run Code Online (Sandbox Code Playgroud)

objective-c uikit ios uicollectionview performbatchupdates

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