- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经在我的 Cocoa 应用程序上实现了一个 Collection View ,如下 Ray Wenderlich's tutorial (非常有帮助,考虑到 Apple 的 API 在这方面的缺陷和损坏)。
在本教程中,使用以下代码将 Collection View 的 Canvas 设置为黑色(所有代码都在 View Controller 类的 viewDidLoad()
方法中):
collectionView.layer?.backgroundColor = NSColor.black.cgColor
但是,当您使用(例如)魔术鼠标/滚轮过度(“橡皮筋”)滚动时“偷看”的区域仍然是白色并且非常分散注意力:
我正在尝试将整个内容区域设为黑色。在我的 Storyboard中,我设置了 NSScrollView
的背景颜色。和NSClipView
包含 Collection View 为黑色,但它不会改变外观。还尝试了编程替代方案:为 ScrollView 设置一个导出并调用:
self.scrollview.backgroundColor = NSColor.black
self.scrollview.contentView.backgroundColor = NSColor.black
...没有效果。
此外,我尝试过:
collectionView.superview?.layer?.backgroundColor = NSColor.black.cgColor
...但这也不起作用。
也没有:
self.view.layer?.backgroundColor = NSColor.black.cgColor
或者:
self.view.window?.backgroundColor = NSColor.black
<小时/>
更新:
我已将 ScrollView 的背景颜色设置为红色,并且 drawsBackground
至true
(以 IB 和编程方式)。 NSScrollView
的文档的backgroundColor
属性说:
This color is used to paint areas inside the content view that aren’t covered by the document view.
我已在运行时验证文档 View 确实是我的 Collection View :
if scrollview.documentView is NSCollectionView {
print("Document is collection")
}
但是,不会显示红色,并且文档之外的区域( Collection View )保持白色。
<小时/>更新 2: 我启动了 View 层次结构调试器,看起来 drawsBackground
的值在运行时为 false(我在两者代码和 Storyboard中将其设置为 true
)!:
(不过,背景颜色本身似乎有所反射(reflect))
最佳答案
注意:您引用的 Ray Wenderlich 教程以编程方式设置 Collection View 的背景颜色。您需要删除该行,或者确保设置的颜色与上面第 3 步中选择的颜色相同。
关于macos - 如何为 NSCollectionView 的 "Overshoot"背景着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42778317/
我是一名优秀的程序员,十分优秀!