博主現(xiàn)在把之前開發(fā)應(yīng)用程序時(shí)遇到的按鈕不能點(diǎn)擊的幾種情況總結(jié)一下:
1休涤、UIButton不能點(diǎn)擊情況的第一種是突梦,你將button添加到一個(gè)不能響應(yīng)點(diǎn)擊事件的View里诫舅。如你將button添加到UIImageView中,解決辦法只需將UIImageView的userInteractionEnabled設(shè)為YES即可宫患。
2刊懈、UIButton不能點(diǎn)擊情況的第二種是,你對button修改frame時(shí),出現(xiàn)button的frame超過了父View的frame虚汛。這種情況也會導(dǎo)致button點(diǎn)擊不能觸發(fā)點(diǎn)擊事件匾浪,這種情況只需要重新就該button的frame,并讓button的frame不超過父View的frame卷哩。你可以通過打印button和父View的frame來查看是否出現(xiàn)這種上述的這種情況蛋辈。
3、UIButton不能點(diǎn)擊情況的第三種是将谊,你在button上添加了一個(gè)View冷溶,然后這個(gè)View能響應(yīng)事件。但是這個(gè)View并沒有響應(yīng)的點(diǎn)擊觸發(fā)事件尊浓。所以當(dāng)你在點(diǎn)擊button的時(shí)候逞频,是將觸發(fā)事件傳遞給View,而button本需要觸發(fā)的事件則被忽略了眠砾。解決辦法是虏劲,讓添加的這個(gè)View的userInteractionEnabled設(shè)為NO即可。