2017-07-20 6 views
0

私はこのテキストフィールドフレームを設定せずにframe.widthを取得する方法は?

let usn_text_field: LeftPaddedTextField = { 
     let tf = LeftPaddedTextField() 
     tf.placeholder = "Username" 
     tf.translatesAutoresizingMaskIntoConstraints = false 
     return tf 
    }() 
    usn_text_field.topAnchor.constraint(equalTo: info_centill.bottomAnchor).isActive = true 
    usn_text_field.leftAnchor.constraint(equalTo: view.leftAnchor,constant:20).isActive = true 
    usn_text_field.rightAnchor.constraint(equalTo: view.rightAnchor,constant:-75).isActive = true 

を持っていると私は、このTFに境界層を追加したいと彼女は私のコード

let borderLayer = CALayer() 
    borderLayer.frame = CGRect(x:-5,y:39,width:usn_text_field.frame.width,height:1) 
    borderLayer.backgroundColor = UIColor(white: 0.7, alpha: 0.6).cgColor 
    usn_text_field.layer.addSublayer(borderLayer) 

である。しかし、これは0.Howとしてusn_text_field.frame.widthを返しますが、私は設定せずにframe.widthを得ることができますまたは要素の幅を取得する他の方法はありますか?

+0

それは0であるべきですか? –

+0

@AhmadF実際には300を超えていません。 – sakoaskoaso

+0

おそらく、あなたは 'usn_text_field.frame.size.width'を使うべきです。私はこれを使用し、それは私のために働く。 –

答えて

2

追加layoutIfNeededは私のために働いた

関連する問題