2015-01-23 2 views
16

Ich habe stecken, die nicht wollen Passwort im Alert Faust Eindruck Geben SieWie Kennwort eingeben entfernen und von Touch-ID Warnungsansicht Abbrechen-Taste

[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:NSLocalizedString(@"UNLOCK_ACCESS_TO_LOCKED_FEATURE", nil) reply: 
     ^(BOOL success, NSError *authenticationError) 
     { 
      if (success) 
      { 

       msg =[NSString stringWithFormat:NSLocalizedString(@"EVALUATE_POLICY_SUCCESS", nil)]; 
      } 
      else 
      { 
       msg = [NSString stringWithFormat:NSLocalizedString(@"EVALUATE_POLICY_WITH_ERROR", nil), authenticationError.localizedDescription]; 
      } 
     }]; 
    } 
+0

Sie sollten diese Option wirklich dort lassen. Was ist, wenn ein Benutzer keine Touch ID eingerichtet hat? – soulshined

+1

Wenn ein Benutzer keine Touch ID eingerichtet hat, wird dieser Zeitalarm nicht angezeigt. –

Antwort

47

Um die Schaltfläche "Passwort eingeben" auszublenden, müssen Sie localizedFallbackTitle auf einen leeren String setzen.

//... 
LAContext *context = [[LAContext alloc] init]; 

// Hide "Enter Password" button 
context.localizedFallbackTitle = @""; 

// show the authentication UI 
//... 

Über den "Abbrechen" -Button Ich denke nicht, dass es möglich ist, es zu entfernen.

Ich hoffe, dass es hilfreich sein wird.

+0

Ich habe auch das gleiche getan, es hat funktioniert ... aber ich versuche immer noch für Abbrechen-Taste. –

4

Blick auf LAContext.h, fand ich diese :

/// Fallback button title. 
/// @discussion Allows fallback button title customization. A default title "Enter Password" is used when 
///    this property is left nil. If set to empty string, the button will be hidden. 
@property (nonatomic, copy) NSString *localizedFallbackTitle; 

Sie sollten localizedFallbackTitle = @"" -- empty string; setzen. Lass es uns versuchen und antworte, wenn es funktioniert.

-1

Sie können Schaltfläche "Abbrechen" entfernen, aber Ihre Anwendung wird in diesem Fall

[context setCancelButtonVisible:false]; 
+0

Warum würden Sie eine Option hinzufügen (nachdem akzeptable, von Apple benannte/genehmigte Optionen angeboten wurden), die die HIG verletzen? – mbm29414

4

Es gibt localizedFallbackTitle Eigenschaft LAContext Klasse abgelehnt. Wenn Sie einen benutzerdefinierten Text anstelle von "Passwort eingeben" möchten, können Sie hier festlegen.

Wenn es auf leeren String festgelegt ist, wird die Schaltfläche ausgeblendet.

Screenshot 1

Im Folgenden finden Sie Code, den ich verwendet habe:

//MARK: - scanFingerPrint 
    func scanFingerPrint() { 
     let authContext:LAContext = LAContext() 
     authContext.localizedFallbackTitle = "" 
    . . . 
    } 

Screenshot 2

Verwandte Themen