滴滴出行首页(快车),可以上拉下拉底部菜单(tableView),但又不影响后面地图的交互使用。 找来找去网上没有Demo,就想着自己做。 一开始思路错误,想给tablevi...
IP属地:北京
滴滴出行首页(快车),可以上拉下拉底部菜单(tableView),但又不影响后面地图的交互使用。 找来找去网上没有Demo,就想着自己做。 一开始思路错误,想给tablevi...
上文说的对,楼主你这根本就不是状态模式。
状态模式重点是 将状态的切换 封装在状态内部。
应该在IcewaterState调用Context类的setState(State)。例如:
锅炉加热H2O, H2O从固体-》液体-》气体
Boiler{
H20State state;
setH20State(H20State state){
this.state = state;
}
riseTemperature{
state.riseTemperature();
}
}
H20State{
riseTemperature(Context)
}
H20StateSolid implements H20State {
riseTemperature(Boiler boiler) {
boiler.setState(new H20StateLiquid);
}
}
H20StateLiquid implements H20State {
riseTemperature(Boiler boiler) {
boiler.setState(new H20StateGas);
}
}
H20StateGas implements H20State {
riseTemperature(Boiler boiler) {
//State no change
}
}