ios 擴大button的點擊區域


https://www.jianshu.com/p/7017a514d94e

 

當UI設計圖上的給出按鈕尺寸較小,我們將對應的資源文件放入UIButton中,在真機調試中會發現難以點到按鈕。
這時候我們可以創建一個類繼承UIButton,重寫pointInside方法,使得按鈕事件響應不夠我們設置的最小區域的自動擴大到我們的設置的最小區域。

.h定義我們設置的最小響應區域大小 /** * 事件響應最小區域大小(小於此區域則放大,否則保持原大小不變,不賦值保持原大小不變) */ @property (nonatomic, assign) CGSize eventFrame; .m重寫pointInside方法 - (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent*)event{ CGRect bounds = self.bounds; CGFloat widthExtra = MAX(self.eventFrame.width - bounds.size.width, 0); CGFloat heightExtra = MAX(self.eventFrame.height - bounds.size.height, 0); bounds = CGRectInset(bounds, -0.5 * widthExtra, -0.5 * heightExtra); return CGRectContainsPoint(bounds, point); }


作者:fulen
鏈接:https://www.jianshu.com/p/7017a514d94e
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM