Проблема состоит в том, что эти две строки:
int str = Integer.valueOf(strength);
int rank = spinner.getSelectedItemPosition()+1;
Первая не удастся, если вы используете только числа в вашем EditText, но было бы лучше убедиться, что или, по крайней мере, перехватить выброшенное исключениепри попытке преобразовать символ в числовое значение.Кроме того, вы также можете использовать Integer.valueOf(strength).intValue();
, даже если это обычно не нужно.
Настоящая проблема - вторая строка.Вы объявили переменную spinner
, но никогда не создавали ее.Вот почему вы получите NullPointerException там.
На несвязанном примечании: вы также должны начинать имя вашего класса с заглавной буквы, чтобы следовать соглашениям об именах Java.