首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ScrollBar始终可见

ScrollBar始终可见
EN

Stack Overflow用户
提问于 2017-12-08 16:29:25
回答 1查看 504关注 0票数 1

我在here链接下找到了一段很棒的代码。但在我的情况下,还有更多的事情要做。

我的主VC是一个UITableViewController。控制器可以显示两种类型的单元格。其中之一(MyCell)有一个UITextView (textView)类型的子视图。它的文本大小是基于fontSize变量的。我有两个可以降低或增大fontSize的按钮,然后都可以重新加载tableView。根据上面的链接并记住UITextViewUIScrollView的子类,我将我的代码片段放在didEndDisplayingCell

代码语言:javascript
复制
-(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];之后,什么也不会发生。我做错了什么?我应该把我的代码放在其他方法中吗?

EN

回答 1

Stack Overflow用户

发布于 2017-12-08 17:37:23

删除[conduiteCell.textView flashScrollIndicators];,它就会正常工作。

代码语言:javascript
复制
-(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;
        }
      }
    }
  }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47710372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档