2017-09-19 4 views
0

Ich bin Neuling auf swift 3. Ich habe diese Situation: Ich muss Textansicht dynamisch erstellen auch die Schaltfläche zum Entfernen darunter ... so gibt es Schaltfläche, um Feld (Textansicht) dynamisch hinzuzufügen, dann gibt es eine Schaltfläche darunter, um es zu entfernen .. und ich die auf Sicht setzen .. sagen wir mal „placeholderCD“swift 3 Wie programmgesteuert UITextView hinzufügen und dann entfernen, wenn Sie auf die Schaltfläche klicken?

enter image description here

Aber das Problem is..how oder welche Aktion muss ich setzen, wenn die Schaltfläche Entfernen klicken? weil wir die ID dynamisch Button nicht richtig zuweisen können? so mein Code wie folgt:

func AddCommentItem(sender:UIButton){ 
    /** CREATE TEXT VIEW **/ 
    let textView: UITextView = UITextView(frame: CGRect(x: 0, y: (newX + 20), width: 311.00, height: 50.00)); 
    textView.textAlignment = NSTextAlignment.justified 
    //textView.backgroundColor = UIColor.lightGray 
    let borderColor = UIColor.lightGray 
    textView.layer.borderColor = borderColor.cgColor 
    textView.layer.borderWidth = 1.0 
    textView.tag = tagname 
    /** CREATE TEXT VIEW **/ 

    /** CREATE REMOVE TEXT VIEW **/ 
    let btnRemove: UIButton = UIButton(frame: CGRect(x: 240, y: (newX + 52), width: 100, height: 50)) 
    //btnRemove.backgroundColor = UIColor.green 
    btnRemove.setTitle("Remove", for: .normal) 
    btnRemove.titleLabel?.font = btnRemove.titleLabel?.font.withSize(10) 
    btnRemove.tag = tagname 

    btnRemove.setTitleColor(UIColor.gray, for: .normal) 
    btnRemove.addTarget(self, action: #selector(btnRemoveComment), for: .touchUpInside) 
    //btnRemove.tag = 1 

    /** CREATE REMOVE TEXT VIEW **/ 

    cell.placeholderCD.addSubview(textView) 
    cell.placeholderCD.addSubview(btnRemove) 
} 

func btnRemoveComment(Sender:UIButton) { 
    /** HOW I REMOVE THE Related text view object with this action **/ 
} 

Antwort

0

Sie das Textview von Tag entfernen können

cell.placeholderCD.viewWithTag(yourTag)?.removeFromSuperview() 
+0

oh cool..let mir in wenigen Minuten ... übrigens Tag versuchen kann nur mit Integer richtig füllen sein? Kann ich eine ähnliche Zeichenfolge hinzufügen, um sie einzigartig zu machen? Entschuldigung, ich bin neu. Danke! – user1400140

+0

kein Tag ist nur int, Sie können Ihre IndexPath.row für jedes Textfeld zuweisen, um sie eindeutig zu machen –

+0

der Grund, warum ich fragen, weil ich einige Elemente nicht nur Textansicht auf diesem Platzhalter entfernen müssen – user1400140

Verwandte Themen