HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 重新加载时停止透明的UITableView部分标题闪烁大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我遇到了一个奇怪的视觉故障,重新加载我的UITableView的一部分导致半透明标题视图(alpha = 0.25)闪烁一下,就好像它是在旧的顶部上添加一个标题视图副本然后删除一个.

我的标题视图本身是一个动态生成的UIImageView,但是我把它简化为只有一个带有[[UIColor blackColor] colorWithAlphaComponent:0.25]BACkgroundColor的UIView,它仍然表现出问题:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
    UIView* view = [[UIView alloc] initWithFrame:CGRectMake(0,tableView.width,kmodPopHeaderHeight)];
    view.BACkgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.25];
    view.opaque = NO;
    return view;
}

如你所见,我将NO设置为不透明,但这没有任何效果.我还尝试保留一个字典,其中包含先前生成的视图的索引,并返回现有视图(如果它已经被创建)(以测试我的理论显示两个视图重叠),但这也令人惊讶地没有效果.它无论如何闪烁.

请注意,如果我将标题的alpha设置为1.0,则没有视觉故障,因此它显然与透明度有关.它也不会发生在每次点击(重新加载),但大多数.我只是无法弄清楚我需要改变什么才能让它正确绘制.任何意见,将不胜感激.

解决方法

好吧,基于我保留现有headerViews索引的想法,我实际上自己设法解决了这个问题.我第一次尝试的是调用[exisTingView removeFromSuperview],但这根本不起作用.

相反,我将它改为exisTingView.hidden = YES,闪烁的神奇地消失了!你去吧我无法解释为什么这样做并且removeFromSuperview没有,但如果其他人遇到此问题,请尝试在返回新视图之前隐藏现有视图.

大佬总结

以上是大佬教程为你收集整理的ios – 重新加载时停止透明的UITableView部分标题闪烁全部内容,希望文章能够帮你解决ios – 重新加载时停止透明的UITableView部分标题闪烁所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。