对于我的 Android 项目,我准备了一个专用的类来侦听onClick()
和事件(它是 MVC 的控制器),onTouch()
并且onItemSelected()
屏幕有几个Spinner
对象。在这种情况下,当一个事件被触发时,算法必须知道 1)哪个Spinner
被选中,2)哪个Item
被选中。因此,它导致具有如下所示的嵌套开关。
@Override
public void onItemSelected(AdapterView<?> parent, View v, int position, long id) {
switch(parent.getId()) {
case R.id.spn1:
switch (position) {
case 0:
// code
break;
case 1:
// code
break;
case 2:
// code
break;
}
break;
case R.id.spn2:
switch (position) {
case 0:
// code
break;
case 1:
// code
break;
case 2:
// code
break;
}
break;
case R.id.spn3:
switch (position) {
case 0:
// code
break;
case 1:
// code
break;
case 2:
// code
break;
}
break;
default:
}
}
下面发布的示例已经让我很头疼。我肯定很想知道是否有一些方法(也许是使用 OOP)来避免这种大混乱。