|
@@ -29,9 +29,13 @@ public class StackController extends ViewController {
|
29
|
29
|
}
|
30
|
30
|
|
31
|
31
|
public void push(final ViewController child) {
|
|
32
|
+ ViewController previousTop = peek();
|
32
|
33
|
child.setParentStackController(this);
|
33
|
34
|
childControllers.push(child);
|
34
|
35
|
getView().addView(child.getView());
|
|
36
|
+ if (previousTop != null) {
|
|
37
|
+ getView().removeView(previousTop.getView());
|
|
38
|
+ }
|
35
|
39
|
}
|
36
|
40
|
|
37
|
41
|
public boolean canPop() {
|
|
@@ -40,7 +44,10 @@ public class StackController extends ViewController {
|
40
|
44
|
|
41
|
45
|
public void pop() {
|
42
|
46
|
if (canPop()) {
|
43
|
|
- childControllers.pop();
|
|
47
|
+ ViewController poppedController = childControllers.pop();
|
|
48
|
+ getView().removeView(poppedController.getView());
|
|
49
|
+ ViewController previousTop = peek();
|
|
50
|
+ getView().addView(previousTop.getView());
|
44
|
51
|
}
|
45
|
52
|
}
|
46
|
53
|
|