Проверьте enames. Что это за переменная?
UPD: поясняю для упрямых и скрытных:
Что у вас происходит?
В методе ArrayAdapter.createViewFromResource() вызывается метод toString() на null объекте.
Конкретно в этом месте:
List<T> mObjects;
...
T item = getItem(position);
if (item instanceof CharSequence) {
text.setText((CharSequence)item);
} else {
text.setText(item.toString());
}
Где T есть String.
Соответственно, если item == null, то (null instanceof CharSequence) дает false и у вас NullPointer.
Так понятнее? Смотрите, что вы передаете в конструктор ArrayAdapter.