Недавно я создал приложение для научного калькулятора, и все было хорошо, когда я установил его из Xcode и протестировал прямо на моем телефоне. Однако после того, как я установил версию, которую я распространял через Testflight (она точно такая же, как и предыдущая), приложение запускается каждый раз при вызове IBOAction
(отправитель UIPanGestureRecognizer
). Сначала отображается сообщение NSInvalidArgumentException
, и я нахожу строку
if sender.state == .began
может вызвать ошибку.
Однако после нескольких тестов начинает показываться
"Thread 1: EXC_BAD_ACCESS (code=1, address=0x6c43f8bb8e00)" (at the line "init(elementKeeper: ElementKeeper)")
вместо
NSInvalidArgumentException
Понятия не имею, что здесь происходит. Кто-нибудь, пожалуйста, помогите мне, я буду признателен.
public class ParentheseKeeper {
private var leftParenthese: [Int]
private var rightParenthese: [Int]
// MARK:- Initialization
init() {
leftParenthese = []
rightParenthese = []
}
init(elementKeeper: ElementKeeper) { //"Thread 1: EXC_BAD_ACCESS (code=1, address=0x6c43f8bb8e00)" shows here
leftParenthese = []
rightParenthese = []
for (i, element) in elementKeeper.getElements().enumerated() {
if element == .LeftParenthese { addLeft(i) }
else if element == .RightParenthese { addRight(i) }
}
}
}