Ich habe einen Dialog mit verschiedenen Elementen, die nicht immer alle aktiv sind.
Das Layout ist von oben nach unten folgerndermaßen angeordnet:
1. UIScrollview für horizontal verschiebbare Labels
2. UIView mit einem UILabel drin
3a. UIScrollView oder
3b. UITableView
4. UIScrollView für Buttons
Jede View nimmt dann ein paar Objekte auf (Labels, Edittext usw.)
Die erste Scrollview kann über die Settings auch deaktiviert werden und soll dann nicht mehr sichtbar sein.
Ich dachte, ich mache im ViewDidLoad folgende Aktionen:
- Scrollview1 hidden auf YES setzen
- UIView2 mit [view2 setFrame:CGRectMake(view2.frame.origin.x, view2.origin.y - scrollview1.frame.size.height, maxBreite, view2.frame.size.height)] nach oben schieben.
Dachte ich ...
Die ScrollView1 belegt weiterhin den Platz (trotz hidden = YES).
Ich habe dann mit CGMakeRect(0,0,0,0) die ScrollView1 ganz klein gemacht, aber sehe keinen Unterschied.
Ist mein Ansatz so falsch oder übersehe ich was ganz anderes ?
Die grundsätzliche Vorgehensweise muss zur Laufzeit erfolgen, denn auch die beiden Objekte unter 2 müssen je nach erfassten Daten alternativ angezeigt werden können und dann jeweils das andere Objekt in der ganzen Fläche überlagern.
Das Layout ist von oben nach unten folgerndermaßen angeordnet:
1. UIScrollview für horizontal verschiebbare Labels
2. UIView mit einem UILabel drin
3a. UIScrollView oder
3b. UITableView
4. UIScrollView für Buttons
Jede View nimmt dann ein paar Objekte auf (Labels, Edittext usw.)
Die erste Scrollview kann über die Settings auch deaktiviert werden und soll dann nicht mehr sichtbar sein.
Ich dachte, ich mache im ViewDidLoad folgende Aktionen:
- Scrollview1 hidden auf YES setzen
- UIView2 mit [view2 setFrame:CGRectMake(view2.frame.origin.x, view2.origin.y - scrollview1.frame.size.height, maxBreite, view2.frame.size.height)] nach oben schieben.
Dachte ich ...
Die ScrollView1 belegt weiterhin den Platz (trotz hidden = YES).
Ich habe dann mit CGMakeRect(0,0,0,0) die ScrollView1 ganz klein gemacht, aber sehe keinen Unterschied.
Ist mein Ansatz so falsch oder übersehe ich was ganz anderes ?
Die grundsätzliche Vorgehensweise muss zur Laufzeit erfolgen, denn auch die beiden Objekte unter 2 müssen je nach erfassten Daten alternativ angezeigt werden können und dann jeweils das andere Objekt in der ganzen Fläche überlagern.