Missing colorizing the last dot
During the process of defining the PIN or entering, the last dot is never painted because the code go fast do go back.
So I've changed the following calls: [self checkForEnteredPin];
To: [self performSelector:@selector(checkForEnteredPin) withObject:self afterDelay:0.5];
So now it have time to paint the last dot and make the user understand better what is happening.
What do you think?
Yep, we are thinking about it now, but we also need to "block" UI/UX while waiting 0.5 secs to not receive keyboard input and other events. We'll submit new version in some days with this improvement. Thanks for the feedback!
True true.. Thanks for your attention!
For APPinViewcontroller in a fork, I used:
#pragma mark - Pin Code View Delegate
- (void)pinCodeView:(APPinView*)view didEnterPin:(NSString*)pinCode
{
// Small Hack to give time to show the last entered number
double delayInSeconds = 0.15;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
view.pinCode = nil;
//Verify case
if (self.pinCodeToCheck != nil && !self.shouldResetPinCode) {
[self verifyPinWithEntered:pinCode];
} else if (self.pinCodeToCheck != nil && self.shouldResetPinCode) {
[self changePinWithEntered:pinCode];
} else {
[self setEnteredPin:pinCode];
}
});
}