mac中NSScrollView滑動監測
不同於iOS中的UIScrollView,mac中的NSScrollView並沒有一堆靠譜好用的delegate來幫助我們方便的監控ScrollView的狀態。
iOS中我們可以通過UIScrollView的contentOffset
屬性來獲知滑動的位置,而在mac中我們是通過NSScrollView的contentView
(NSClipView的例項)的documentVisibleRect.origin
來獲知滑動的相對位置。
在iOS中我們可以通過UISCrollView的delegate
方法- (void)scrollViewDidScroll:(UIScrollView *)scrollView;
來在滑動的過程中做一些我們愛做的事兒呢。
那麼在mac中NSScrollView我們有沒有同樣的東西來做我們愛做的事兒呢?
當然是有的,只是跟iOS中有些許的區別,NSScrollView是通過通知來實現的,直接上程式碼:
//找個合適的地兒,註冊通知
NSNotificationCenter *center = [NSNotificationCenter defaultCenter] ;
[center addObserver: self
selector: @selector(boundsDidChangeNotification:)
name: NSViewBoundsDidChangeNotification
object: [self.scrollView contentView]];
需要注意的是 ,在上面通知註冊之前,你需要加上這麼一句:
[[self.scrollView contentView] setPostsBoundsChangedNotifications: YES];
然後在NSScrollView滑動的時候,你就能在你實現下面這個方法的地方,做你想做的愛做的事兒了:
- (void) boundsDidChangeNotification: (NSNotification *) notification
{
// 在這裡進行處理
NSClipView *changedContentView=[notification object];
// get the origin of the NSClipView of the scroll view that
// we`re watching
NSPoint changedBoundsOrigin = [changedContentView documentVisibleRect].origin;
}
以上,歡迎典藏。
喜歡我的可以關注收藏我的個人部落格:RobberJJ
相關文章
- EtreCheckPro for Mac(系統資訊監測)Mac
- vue中陣列變動不被監測問題Vue陣列
- web前端仿手機左右滑動(手滑+自動滑動)Web前端
- 請問一下,如何監聽 swipe 滑動事件,謝謝 - 使用於安卓端的自動化測試事件安卓
- 直播平臺開發,自定義中間向兩邊滑動的滑動條
- Java + Selenium + OpenCV解決自動化測試中的滑塊驗證JavaOpenCV
- recyclerview 彈性滑動 + 中間元素放大View
- TensorFlow中滑動平均模型介紹模型
- 安卓中如何實現滑動導航安卓
- HBase在移動廣告監測產品中的應用
- 直播系統app原始碼,自定義中間向兩邊滑動的滑動條APP原始碼
- TG Pro for Mac(Mac電腦硬體溫度監測工具)Mac
- WiFi訊號監測工具:WiFi Signal for MacWiFiMac
- 移動端左滑右滑元件元件
- uniapp---app滑動翻頁(上滑、下滑、左滑、右滑)APP
- 直播app開發搭建,載入Html片段監聽滑動到底部APPHTML
- 用Activity的onTouchEvent方法實現監聽手指上下左右滑動
- Android 設定TextView滑動滾動條和滑動效果AndroidTextView
- 行人闖紅燈自動監測系統
- jQuery 效果 – 滑動jQuery
- Listview禁止滑動View
- Uiautomator swipe 中滑動速度怎麼計算?UI
- Boss Radar for Mac(低耗藍芽監測軟體)Mac藍芽
- KPI中的監控型監測型,控制型考核型KPI
- 粘性控制元件,滑動停留StickLayout(導航欄滑動停留)控制元件
- 聊聊Flutter中的常見滑動手勢衝突Flutter
- FloatingActionButton在RecycleView中滑動隱藏顯示View
- 分支資料監測終端(啟動)
- Oracle動態監聽註冊測試Oracle
- TG Pro for Mac 電腦硬體溫度監測工具Mac
- Performance Index 64 Pro for Mac(系統效能監測軟體)ORMIndexMac
- 系統監測工具:System Dashboard Pro for Mac中文版Mac
- Mac網路監測工具箱:Network Kit XMac
- Flutter 滑動體系Flutter
- Swift全屏滑動返回Swift
- 滑動條:QSliderIDE
- UIPikerView 省市區三聯滑動,解決滑動崩潰問題UIView
- 蘋果Mac OS X怎樣設定滑鼠滾輪滑動的方向/反向蘋果Mac