2012-02-10 35 views
1

如果您在iPod/Music應用程序中注意到,當您點擊進度滑塊時,您可以輕觸小旋鈕的相當遠的距離,並且它仍然會註冊,就好像您已輕敲它一樣。 UINavigationController的工具欄中的按鈕也是如此,請注意(如果附近沒有任何東西),您可以按下相當遠的位置。後退按鈕,它仍然會註冊。擴展UIControl熱門地區的最佳途徑?

如何最好地實現我自己的控制?我實際上是在UIProgress滑塊上做的。

回答

2

有一個複雜的方法,涉及覆蓋自定義UIControl子類上的hitTest方法,但最簡單的解決方案只是使控件大於屏幕上的可見大小。

例如,對於一個按鈕,您可能使按鈕本身爲50x50像素,但使按鈕圖形爲20x20像素,因此它看起來相當小,但具有很大的命中區域。

相同的技術可以適用於您的滑塊。使UISlider框架相當高(比如說50px),但滑塊圖形要小一些。如果這不能很好地工作,因爲控件將它們拉伸到合適的位置,只需使滑塊本身的圖形透明並在實際滑塊控件後面的圖像視圖中繪製更細的滑塊即可。