SofroN: Попробовал. Массив styleIDs при извлечении как int[] ids= getResources().getIntArray(R.array.styleIDs); возвращает массив инициализированный нулями. При попытке вытащить его как getStringArray, предварительно заменив в ресурсах integer-array на array, получаю массив заполненный null-ами. Так что пока рабочим остается мое, громоздкое решение.
SofroN: Код из ответа ниже, нравится мне своей гибкостью. Написав его один раз, я могу добавлять новые стили, не заботясь о том, чтобы они добавились в меню. А вот насчет ресурсов вы правы.
SofroN: Хотя нет, так не выйдет. Это я в ресурсах должен буду создать массив, куда положить все свои стили. Как то это избыточно. А что вы можете сказать против решения через рефлексию?
Помогло. Так же помогло android:launchMode="singleTop" (на другом ресурсе подсказали), теперь надо разобраться в чем разница между singleTop и singleTask