2016-04-21 4 views
2

I Wenn Sie ein Textfeld mit dem Standardwert "•••••••••••" erstellen möchten, wenn der Benutzer auf eine Nummer in UIKeyboardTypeNumberPad klickt, wird ein Textfeld wie "1 ••••••" hinzugefügt (z. B. auf Nummer 1 geklickt) und "12 •••••" (zum Beispiel zweiter Klick Nummer 2) .Jeder Klick auf UIKeyboardTypeNumberPad wird zum Textfeld hinzugefügt. Wie kann ich das tun? Danke.Ziel C Textfeld Standardwert "•••••••" bis "1 •••••••", "12 •••••", "123 ••••", wenn Benutzer auf die Nummer klicken

+0

Haben Sie etwas versucht? Hast du irgendwelche Ideen? Was schief gelaufen ist? Zeigen Sie Ihren Code. – Wain

+0

Sie haben diesen Wert als Platzhalter **** gesetzt und ändern die Platzhalterfarbe – Birendra

+0

text = [[UITextField alloc] initWithFrame: someRect]; text.backgroundColor = [UIColor whiteColor]; [Text setKeyboardType: UIKeyboardTypeNumberPad]; text.textColor = [UIColor orangeFarbe]; CGFloat textfieldsize = 100.0f; [text.font fontWithSize: textfieldsize]; NSAttributedString * str = [[NSAttributedString-Zuweisung] initWithString: @ "●●●●●●●●●●●●" Attribute: @ {NSForegroundColorAttributeName: [UIColor orangeColor]}]; text.attributedPlaceholder = str; –

Antwort

1

Ich habe einen Trick verwendet, um dies zu tun ..

  1. Zuerst UIL-fähig ziehen a nd setzen Sie den Text mit ●●●●●●●
  2. Ziehen Sie nun ein UITextField und legen Sie es über UILable.
  3. Jetzt ändern UITextField Attribute in storyBoard wie ändern UITextField TintColor als clearColor (Weil ich nicht blink Cursor anzeigen möchte), textColor als clearColor (Weil ich nicht Textfield Text anzeigen möchte) und Keypad Typ NumberPad.
  4. UILable und UITextField textAlignment ist in der Mitte mit der gleichen Schriftart-Familie und Schriftgröße.
  5. Jetzt füge ich eine IBAction, d. H. Bearbeitung geändert zu UITextField in meinem ViewController von Connection Inspector in storyBoard.
  6. Letzter Schritt dh Code in Bearbeitung geändert method--

    -(IBAction)textEditingChanged:(UITextField*)sender{ 
    
         if(sender.text.length==0){ 
          self.myLable.text=[NSString stringWithFormat:@"●●●●●●●"]; 
         } 
    
         if(sender.text.length==1){ 
          self.myLable.text=[NSString stringWithFormat:@"%@●●●●●●",sender.text]; 
         } 
    
    
         if(sender.text.length==2){ 
          self.myLable.text=[NSString stringWithFormat:@"%@●●●●●",sender.text]; 
         } 
    
         if(sender.text.length==3){ 
          self.myLable.text=[NSString stringWithFormat:@"%@●●●●",sender.text]; 
         } 
    
         if(sender.text.length==4){ 
          self.myLable.text=[NSString stringWithFormat:@"%@●●●",sender.text]; 
         } 
    
         if(sender.text.length==5){ 
          self.myLable.text=[NSString stringWithFormat:@"%@●●",sender.text]; 
         } 
    
         if(sender.text.length==6){ 
          self.myLable.text=[NSString stringWithFormat:@"%@●",sender.text]; 
         } 
         if(sender.text.length==7){ 
          self.myLable.text=[NSString stringWithFormat:@"%@",sender.text]; 
          [sender resignFirstResponder]; 
         } 
    
    
        } 
    

ist möglicherweise eine bessere approch sein, dies zu tun, aber das ist mein Trick, der gut arbeitet .. Dank

enter image description here

+0

Danke. Es funktioniert super –

+0

@ ÜnalÖztürk Glücklich, Ihnen zu helfen :) :) –

Verwandte Themen