gpt4 book ai didi

cocoa-touch - UIColor groupTableViewBackgroundColor是透明的

转载 作者:行者123 更新时间:2023-11-29 13:50:49 25 4
gpt4 key购买 nike

我的导航堆栈上有一个分组样式 UITableView,当我单击一个单元格时,我将 UIDatePicker 插入堆栈。问题是我希望这个自定义 View 与我的表格 View 具有相同的背景颜色。

我尝试将自定义 View 的背景颜色设置为:

datePicker.backgroundColor = [UIColor groupTableViewBackgroundColor];

但这是透明的。我还尝试修改底层 CGColor 对象使其具有 1.0 的 alpha,这导致背景颜色为黑色。

以下确实按预期工作:

datePicker.backgroundColor = [UIColor lightGrayColor];

但是,当然,这种颜色与分组表格的背景颜色不太匹配。

我是不是做错了?我发现了一个关于这个的类似帖子 here , 但没有有用的回应。

最佳答案

“将 UIDatePicker 压入堆栈”是什么意思?为什么不尝试将 UIDatePicker 动画化到 View 中?

当 View 加载时,创建选择器并将框架设置为屏幕外,例如

    [picker setFrame:CGRectMake(0,960,320,216)];

然后不是“插入”选择器,而是将其设置为动画,如下所示:

    [UIView beginAnimations:nil context:NULL];
[picker setFrame:CGRectMake(0,200,320,216)];
[UIView commitAnimations];

当你想关闭选择器时,只需像这样隐藏它:

    [UIView beginAnimations:nil context:NULL];
[picker setFrame:CGRectMake(0,960,320,216)];
[UIView commitAnimations];

如果需要,您还可以添加一个带有“完成”按钮的工具栏以关闭选择器,这对我来说非常有用。

如果选择器的内容要显示在表格上,那么您可以在该动画序列中设置表格的框架。在第一个中,将表格大小减半(比如我的示例中的 150 会很完美),然后在隐藏序列中,将表格设置为原始大小(本示例中为 415)。当您隐藏选择器时,调用 [tableView reloadData]; 来刷新表格。

关于cocoa-touch - UIColor groupTableViewBackgroundColor是透明的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4543382/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com