Мне нужен способ получить следующее/предыдущее перечисление.
Моя проблема заключается в том, что я не могу перебирать обычным способом:Android Получить следующий или предыдущий Enum
for(Mode m: Mode.values()) {
. . .
}
Мне нужно, чтобы получить следующий перечисление внутри метода, каждый раз, когда он вызывается:
Обратите внимание, что Режим представляет собой систему Enum, поэтому Я не могу определить методы, если я не создаю свой собственный Enum, который является решением, но менее предпочтительным.
public class A {
private Mode m;
A() {
m = Mode.CLEAR;
}
...
protected onClick(View v) {
...
v.getBackground().SetColorFilter(R.color.azure, m);
m = m.next(); // <-- I need something like this
...
}
Вы уверены * порядковое() * получает заказ в * значений() *? Я знаю, что ordinal() дает порядок Enum, поскольку он написан в определении Enum, я не уверен, что значения() ограничены, чтобы возвращать тот же порядок Enums. – ilomambo