相信不少人在mac应用开发中,在添加NSCollectionView控件的时候都是从xib或者storyboard中添加,这个时候NSCollectionView就会自动被套上一层NSScrollView作为NSCollectionView的enclosingScrollView对象。
刚开始时我们都会以为NSCollctionView中添加几个item后出现的NSScroller是被套上的NSSCrollView的,但通过查看图层发现不对。因此无论我们怎么自定义该NSScroller都无效,包括隐藏。
实际上在我们给NSCollectionView添加item后,NSCollectionView还会添加一个NSScrollView对象,实际响应滑动的是它,而不是嵌套在外面的那个。因此,如果要隐藏NSScroller,则要隐藏到正确的对象才行。
在将NSScrollView的NSScroller隐藏后,会遇到scrollToItemsAtIndexPaths函数调用无效,此刻需要我们自己去实现该功能,实现方式是通过获得NSScrollView的clipView,调用其scrollPoint来做滚动。
网友评论