È possibile raggiungere questo facilmente utilizzando vincoli di layout automatico.
Supponiamo di avere tre punti di vista come questo:
+-----+
| A |
+-----+
+-----+
| B |
+-----+
+-----+
| C |
+-----+
e si vuole fare in vista B scomparire in alcuni casi.
Impostare vincoli come segue (questi sono i valori solo esempio):
B top space to A: 4
C top space to B: 4
B height: 20
quindi creare una presa NSLayoutConstraint nel codice per l'altezza di B. Fai questo trascinando e rilasciando il vincolo in IB.
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *bHeight;
Infine, per rendere la vista sparire, basta effettuare le seguenti operazioni:
self.bHeight = 0;
Si noti che se si sta facendo questo per una cella Tableview, si possono avere casi in cui si desidera B a comparire in alcune celle, ma non in altre.
In questo caso, sarà necessario ripristinare l'altezza al suo valore "normale" per quelle celle in cui si desidera che sia visibile.
self.bHeight = 24;
non puoi farlo in iOS proprio come Android, ma se stai usando un UIStackView puoi – Fonix
Usare UIStackView come funziona? @Fonix –
se si dispone di qualsiasi codice di riferimento per quanto riguarda si prega di commentare –