не константа в Enum
Я использую перечисление с переключателем, но получаю следующую ошибку:
Лента новостей не является константой в FragmentName
Это моя строковая константа enum,
public enum FragmentName{
FRAGMENT_NEWSFEED("NEWS FEED"),
FRAGMENT_MESSAGES("MESSAGES"),
FRAGMENT_EVENTS("EVENTS"),
FRAGMENT_WHOISAROUDNME("WHOS AROUND");
private final String text;
private FragmentName(final String text) {
this.text = text;
}
@Override
public String toString() {
return text;
}
}
//This is my function from where i check for corresponding enum constant
public void changeTitle(String title) {
switch (Enums_String.FragmentName.valueOf(title)) {
case FRAGMENT_NEWSFEED:
System.out.println("1");
break;
case FRAGMENT_EVENTS:
System.out.println("2");
break;
case FRAGMENT_MESSAGES:
System.out.println("3");
break;
case FRAGMENT_WHOISAROUDNME:
System.out.println("4");
break;
}
}
Когда я звоню
changeTitle("NEWS FEED");
это создает исключение в функции changeTitle, даже если переданное значение одинаково, поэтому любая помощь будет принята с благодарностью, поскольку я приложил все усилия, чтобы решить эту проблему.