0

PinCode セットアップ画面に 4 つの連続した UITextField を配置しています。これらのUiTextFieldを「パスワード保護」にしましたが、問題はTextFieldに任意の文字を入力すると、最初にその文字が表示され、次に*(またはDOT)に変換されます。デフォルトの動作と同じです。

Now is there any way that when i start typing in that field it does not show me that character and just keep on printing DOT or a * in the field.

Thanks

4

4 に答える 4

1
You can do one thing.. 

this is .h file------>

#import <UIKit/UIKit.h>

#define fontRegular @"Helvetica Neue"
#define fontBold @"HelveticaNeue-Bold"


@interface ABCViewController : UIViewController <UITextFieldDelegate>

{
    NSString *strReturn;
}

@property(nonatomic,retain)NSString *strReturn;

@end



this is .m file--->

#import "ABCViewController.h"



@implementation ABCViewController

@synthesize strReturn;





-(void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.


    UITextField *txt_Fields= [[UITextField alloc]initWithFrame:CGRectMake(30, 0, 230, 44)];
    txt_Fields.backgroundColor= [UIColor clearColor];
    txt_Fields.delegate= self;
    txt_Fields.clearButtonMode=YES;
    txt_Fields.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
    [txt_Fields setFont:[UIFont fontWithName:fontRegular size:20.0]];
    [txt_Fields setTextColor:[UIColor colorWithRed:105.0/255 green:105.0/255 blue:105.0/255 alpha:1.0]];
    txt_Fields.borderStyle=UITextBorderStyleBezel;
    txt_Fields.returnKeyType = UIReturnKeyDone;
    txt_Fields.keyboardType=UIKeyboardTypeURL;
    txt_Fields.autocapitalizationType = UITextAutocapitalizationTypeNone;
    [self.view addSubview:txt_Fields];
    [txt_Fields release];

}



- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
    self.strReturn=[NSString stringWithFormat:@"%@%@",strReturn,string];
    textField.text=[NSString stringWithFormat:@"%@*",textField.text];
    NSLog(@"str:- %@",self.strReturn);
    return NO;
}


Note:-
But In this case you will have to maintain string manually, Means You will have to store the string in a string variable, you can not take textfield.text, because it will return - "****". And you will have to manage so many things manuaaly.... 
于 2012-09-04T12:54:07.773 に答える
0

次の例が表示される場合があります: https://github.com/Koolistov/Passcodeお役に立てば幸いです。

于 2012-09-04T15:10:51.037 に答える
0

これは小さなキーボードを備えたモバイル デバイスであることを忘れないでください。一瞬押されたキーを表示するだけで、ユーザーは正しいキーを押したことを確認できます。また、モバイル デバイスであるため、画面を見ているのはユーザーだけである必要があります。ユーザーが AirPlay を使用して画面を共有している場合は、パスワード情報を入力する前に AirPlay をオフにする必要があります。

于 2012-09-04T11:59:08.113 に答える
0

それは不可能。この機能はアップルでは利用できません。

于 2012-09-04T11:34:00.623 に答える