Questions tagged «uitableview»

UITableView是用于在iOS上显示和编辑信息列表的类。表格视图在单个列中显示项目。UITableView是UIScrollView的子类,尽管UITableView仅允许垂直滚动,但它允许用户滚动表。

22
检测到约束不明确地提示高度为零的情况
当我运行包含表视图单元的应用程序时,更新到Xcode 6.1 beta 2后,调试助手会说: Warning once only: Detected a case where constraints ambiguously suggest a height of zero for a tableview cell's content view. We're considering the collapse unintentional and using standard height instead. 以前,当我在该项目上使用Xcode 5时,会遇到一些错误,但是自升级以来,这些错误已经消失了。我现在没有其他错误或警告。我已经尝试过调整所有tableview单元格的大小,也尝试过使用标准高度,但是仍然收到相同的警告: Warning once only: Detected a case where constraints ambiguously suggest a height of zero …

15
UIRefreshControl-当UITableViewController位于UINavigationController内部时,beginRefreshing不起作用
我已经在UITableViewController(位于UINavigationController内部)中设置了UIRefreshControl,并且它按预期工作(即,下拉触发正确的事件)。但是,如果我以编程beginRefreshing方式在刷新控件上调用实例方法,例如: [self.refreshControl beginRefreshing]; 没发生什么事。它应该向下动画并显示微调框。endRefreshing在刷新后调用该方法时,该方法可以正常工作。 我用这种行为鞭打了一个基本的原型项目,当我的UITableViewController直接添加到应用程序委托的根视图控制器时,它可以正常工作,例如: self.viewController = tableViewController; self.window.rootViewController = self.viewController; 但是,如果我tableViewController先将添加到UINavigationController,然后将导航控制器添加为rootViewController,则该beginRefreshing方法将不再起作用。例如 UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:tableViewController]; self.viewController = navController; self.window.rootViewController = self.viewController; 我的感觉是,这与导航控制器中的嵌套视图层次结构与刷新控件的效果不佳有关-有任何建议吗? 谢谢

24
UITableView动态单元格高度仅在某些滚动后才正确
我有一个使用自动布局在情节提要中定义UITableView的自UITableViewCell定义。该单元具有多个多行UILabels。 在UITableView出现要正确计算单元格高度,但在最初的几个细胞高度不正确的标签之间的分歧。滚动一点后,一切都会按预期进行(即使最初不正确的单元格也是如此)。 - (void)viewDidLoad { [super viewDidLoad] // ... self.tableView.rowHeight = UITableViewAutomaticDimension; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { TableViewCell *cell = [self.tableView dequeueReusableCellWithIdentifier:@"TestCell"]; // ... // Set label.text for variable length string. return cell; } 有什么我可能会丢失的东西,导致自动布局无法在最初的几次中完成它的工作吗? 我创建了一个示例项目来演示此行为。

12
iOS11中奇怪的uitableview行为。单元格通过导航推送动画向上滚动
我最近将一些代码迁移到了新的iOS 11 beta 5 SDK。 现在,我从UITableView得到一个非常令人困惑的行为。tableview本身并不那么花哨。我有自定义单元格,但大多数情况下只是为了它们的高度。 当我用tableview推送视图控制器时,我会得到一个附加的动画,其中单元会沿着push / pop导航动画“向上滚动”(或可能改变整个tableview框架)并向下滚动。请参阅gif: 我手动创建tableview的loadView方法和设置自动布局约束等于前置,顶部的tableview的上海华盈的底部。超级视图是视图控制器的根视图。 View Controller推送代码非常标准: self.navigationController?.pushViewController(notifVC, animated: true) 相同的代码提供了iOS 10上的正常行为。 您能指出我出什么问题的方向吗? 编辑:我做了一个非常简单的tableview控制器,我可以在那里复制相同的行为。码: class VerySimpleTableViewController : UITableViewController { override func viewDidLoad() { super.viewDidLoad() self.tableView.register(UITableViewCell.self, forCellReuseIdentifier: "Cell") } override func numberOfSections(in tableView: UITableView) -> Int { return 1 } override func tableView(_ tableView: UITableView, numberOfRowsInSection …

20
UITableView从iOS 7中的偏移量开始
我已将普通的简陋UITableView拖到iOS 7中的UIViewController上。 现在,第一个单元格开始之前存在一个垂直的空间偏移。我该如何摆脱呢?我希望第一行更接近UITableView实际开始的位置的顶部边缘。我没有要求大额补偿吗? 有任何想法吗?
115 uitableview  ios7 


14
如果没有“表视图”结果,则在屏幕上显示“无结果”
我有一个tableview,有时可能没有任何结果要列出,因此如果没有结果(标签或一个表视图单元格?),我想说一句“无结果”。 有最简单的方法吗? 我会尝试label在结果tableview之后隐藏一个,然后根据结果隐藏两者之一,但是由于我使用的是a TableViewController而不是普通的,因此ViewController我不确定这有多聪明或可行。 我也使用Parse和子类化为PFQueryTableViewController: @interface TableViewController : PFQueryTableViewController 我可以提供所需的任何其他详细信息,请告诉我! TableViewController 故事板中的场景: 编辑: Per Midhun MP,这是我正在使用的代码 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { NSInteger numOfSections = 0; if ([self.stringArray count] > 0) { self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine; numOfSections = 1; //yourTableView.backgroundView = nil; self.tableView.backgroundView = nil; } else { UILabel *noDataLabel = [[UILabel alloc] …


8
是否可以使用“自动布局”获得动态表格视图节标题高度?
iOS 8中的新增功能,您只需设置估计的行高即可获得100%动态表视图单元格,然后使用“自动布局”在单元格中布局元素。如果内容的高度增加,单元格的高度也会增加。这非常有用,并且想知道表视图中的节标题是否可以实现相同的功能? 例如,是否可以创建一个UIViewin tableView:viewForHeaderInSection:,添加一个UILabel子视图,针对视图指定标签的自动布局约束,以及使视图的高度增加以适合标签的内容,而无需实施tableView:heightForHeaderInSection:? 有关viewForHeaderInSection状态的文档:“仅当还实现了tableView:heightForHeaderInSection:时,此方法才能正确工作。” 我还没有听说iOS 8是否有任何更改。 如果不能做到这一点,模仿这种行为的最佳方法是什么?

4
带有多个Swift的自定义单元格的UITableview
我想将UITableview与其他自定义tableViewCells一起使用。我的3个单元格是这样的: 单元格1:应具有图片和标签。 Cell2:应有两个标签。 Cell3:应该有一个dayPicker。 我不想为单元格编码。我该如何在Swift中进行管理。我是否必须为每个单元都编写自己的类?我可以使用一个tableviewController吗?如何填充不同单元格中的数据? 我想生成一个tableView,就像iOS设备的联系人应用程序一样。
111 swift  uitableview 

10
删除UITableView的单元格突出显示颜色
我想删除uitableview单元格选择的默认蓝色。我不要那里的任何选择颜色。我尚未创建自定义单元格类。我正在通过在其上添加标签和按钮来自定义单元格。我试着做: cell.selectioncolor = [UIColor clearcolor]; 但是它说不推荐使用此方法。

14
如何在UITableView中隐藏第一节标题(分组样式)
随着使用分组样式的表格视图的设计在iOS 7中发生了很大变化,我想隐藏(或删除)第一个节标题。到目前为止,我还没有实现它。 经过某种程度的简化,我的代码如下所示: - (CGFloat) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { if (section == 0) return 0.0f; return 32.0f; } - (UIView*) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { if (section == 0) { UIView* view = [[UIView alloc] initWithFrame: CGRectMake(0.0f, 0.0f, 640.0f, 0.0f)]; return view; } return nil; } - (NSString*) tableView:(UITableView *) tableView …
108 ios  uitableview  ios7 

18
UITableView完成查询数据后会收到通知吗?
有什么方法可以找出何时UITableView从其数据源中查询数据? 的无viewDidLoad/ viewWillAppear/ viewDidAppear关联的视图控制器(方法UITableViewController)是使用在这里,因为他们都火得太早。它们(完全可以理解)都不能保证对数据源的查询暂时已经完成(例如,直到视图滚动为止)。 一个解决办法,我发现是调用reloadData的viewDidAppear,因为当reloadData返回时,表视图是保证完成查询数据源,它更需要的时间存在。 但是,这似乎有点令人讨厌,因为我认为这会导致在reloadData首次加载数据源时两次(自动一次,由于调用而一次)要求输入相同的信息。 我要执行此操作的原因是我想保留-的滚动位置,UITableView但要一直到像素级别,而不仅仅是到最近的行。 当恢复滚动位置(使用scrollRectToVisible:animated:),我需要的表视图已经有足够的数据在里面,否则scrollRectToVisible:animated:方法调用什么也不做(这是如果你把它自己的呼叫任何会发生什么viewDidLoad,viewWillAppear或viewDidAppear)。
108 ios  iphone  uitableview 

7
如何以分组样式设置UITableView中单元格的宽度
我已经为此工作了大约2天,因此我想与您分享我的经验。 问题是:是否可以使分组的UITableView中的单元格宽度变小? 答案是不。 但是有两种方法可以解决此问题。 解决方案#1:表格更薄 可以更改tableView的框架,以使表格变小。这将导致UITableView以减小的宽度呈现内部单元格。 解决方案如下所示: -(void)viewWillAppear:(BOOL)animated { CGFloat tableBorderLeft = 20; CGFloat tableBorderRight = 20; CGRect tableRect = self.view.frame; tableRect.origin.x += tableBorderLeft; // make the table begin a few pixels right from its origin tableRect.size.width -= tableBorderLeft + tableBorderRight; // reduce the width of the table tableView.frame = …
107 ios  iphone  uitableview  width 

6
具有固定节标题的UITableView
问候,我读到的默认行为UITableView是,当您滚动浏览各节时,将节标题行固定在表的顶部,直到下一节将previos节行从视图中推出为止。 我有一个UITableView内部UIViewController,似乎并非如此。 这仅仅是违背行为UITableViewController吗? 这是一些基于我的简化代码。我将显示该UIController接口和已实现的用于创建表视图的每个表视图方法。我有一个辅助数据源类,可帮助我为表使用索引我的对象。 @interface MyUIViewController ()<UITableViewDelegate, UITableViewDataSource> @property (nonatomic, readonly) UITableView *myTableView; @property (nonatomic, readonly) MyCustomHelperDataSource *helperDataSource; @end //when section data is set, get details for each section and reload table on success - (void)setSectionData:(NSArray *)sections { super.sectionData = sections; //this array drives the sections //get additional data for …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.