2017-04-12 5 views
0

下部の進行状況バーはUITextFieldのままにしておきたいと思います。しかし、私はそれが底辺のためにどのように保つことができるのか分かりません。UITextFieldの下部にロードプログレスバーを表示する方法

どうすればこの問題を解決できますか?

enter image description here

+0

が何を達成したいですか..? –

+0

携帯番号と同様に、数字をテキストフィールドに入力すると、数字に応じて進捗が増加します.10桁の数字の進行が完了したら、次の画面に移動する必要があります。 – Aayushi

+0

あなたのテキストフィールドをカスタマイズする方法はここにあります。[Swiftyninja](https:// https://www.swiftyninja.com/customising-text-fields-with-swift-3/) –

答えて

1

あなたはノーボーダーでのUITextFieldを作成し、UITextFieldののUIProgressView下を追加するには、UITextField

+0

ありがとう... @ svvoff – Aayushi

0

UIProgressViewを置くことができます。あなたは、その文字をテキストフィールドを処理するために、次のコードを実行する必要があり

progress view

2

ステップ1 IBOutletテキストフィールドの接続とデリゲート接続。

ステップ2 1つのレイヤーを取るCALayer。 viewDidLoadで

CALayer *board; 

STEP 3初期層。

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    board = [CALayer layer]; 
} 

STEP 4 textFiled委任方法。ここで私は静的に電話番号のロジックを適用します、あなたは要件に応じてロジックを適用することができます。

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{ 

    NSLog(@"range %lu",(unsigned long)range.location); 

    if ([textField.layer.sublayers containsObject:board]) { 
     [board removeFromSuperlayer]; 
    } 

    CGFloat borderWidth = 2; 
    board.borderColor = [UIColor darkGrayColor].CGColor; 
    board.frame = CGRectMake(0, textField.frame.size.height - borderWidth, (textField.frame.size.width/10.0) * range.location, textField.frame.size.height); 
    board.borderWidth = borderWidth; 
    [textField.layer addSublayer:board]; 
    return true; 
} 

あなたのOUTPUT:

MY OUTPUT

関連する問題