2
我想使UISwitch周圍的觸摸區域每邊增大10個點。看看相關文章(UIButton: Making the hit area larger than the default hit area)中的一些建議,我嘗試使用下面的方法增加UISwitch周圍的框架,但它會導致整個UISwitch拉伸以填充新框架。UISwitch:使觸摸區域大於默認觸摸區域
有沒有更合理的方法可以做到這一點?
// Increase margin around switch based on width
const CGFloat desiredWidth = 260.0f; // real width is 240
const CGFloat margin = 0.5f * (desiredWidth - self.beginSwitch.frame.size.width);
// Add margin on all four sides of the switch
CGRect newFrame = self.beginSwitch.frame;
newFrame.origin.x -= margin;
newFrame.origin.y -= margin;
newFrame.size.width += 2.0f * margin;
newFrame.size.height += 2.0f * margin;
self.beginSwitch.frame = newFrame;
將一個不可見的按鈕放在它的頂部,當它被擊中時,設置實際開關的按鈕狀態 – trumpetlicks
也許作爲最後的手段,將工作。這種方法的問題是用戶不能像他們期望的那樣滑動交換機。 –
好點,我想我永遠不會滑動開關,我總是點擊他們大聲笑 – trumpetlicks