我在here链接下找到了一段很棒的代码。但在我的情况下,还有更多的事情要做。
我的主VC是一个UITableViewController。控制器可以显示两种类型的单元格。其中之一(MyCell)有一个UITextView (textView)类型的子视图。它的文本大小是基于fontSize变量的。我有两个可以降低或增大fontSize的按钮,然后都可以重新加载tableView。根据上面的链接并记住UITextView是UIScrollView的子类,我将我的代码片段放在didEndDisplayingCell中
-(void)tableView:(UITableView *)tableView didEndDisplayingCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (cell.class == [ConduiteTableCellView class])
{
ConduiteTableCellView *conduiteCell = (ConduiteTableCellView *)cell;
for (UIView *view in conduiteCell.textView.subviews)
{
if ([view isKindOfClass:[UIImageView class]])
{
if (view.alpha == 0 && view.frame.size.width < 10)
{
view.alpha = 1;
break;
}
}
}
[conduiteCell.textView flashScrollIndicators];
}
}但在[self.tableView reloadData];之后,什么也不会发生。我做错了什么?我应该把我的代码放在其他方法中吗?
发布于 2017-12-08 17:37:23
删除[conduiteCell.textView flashScrollIndicators];,它就会正常工作。
-(void)tableView:(UITableView *)tableView didEndDisplayingCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (cell.class == [ConduiteTableCellView class])
{
ConduiteTableCellView *conduiteCell = (ConduiteTableCellView *)cell;
for (UIView *view in conduiteCell.textView.subviews)
{
if ([view isKindOfClass:[UIImageView class]])
{
if (view.alpha == 0 && view.frame.size.width < 10)
{
view.alpha = 1;
break;
}
}
}
}
}https://stackoverflow.com/questions/47710372
复制相似问题