クラスをActivityからAppCompatActivityに変更しました。ActivityをAppCompatActivityに変更するとNullPointerExceptionが発生する
そしてMenuItemCompat.getActionView(item)
にitem.getActionView()
を変更するには、今私は、次のコードでNPEを取得します。
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.messages, menu);
MenuItem item = menu.findItem(R.id.menuTxtSize);
Spinner spinner = (Spinner) MenuItemCompat.getActionView(item);
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
int index = sp.getInt(getString(R.string.pr_text_size),
Integer.parseInt(getString(R.string.pr_default_text_size)));
spinner.setSelection(index);
E/ACRA: ACRA caught a NullPointerException for com.alex.documentation java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Spinner.setSelection(int)' on a null object reference at com.alex.message.activities.MessagesActivity
エラーを解決するにはどうすればよいですか?
NPEが実行されるスタックトレースと実際の回線を含めてください。 – Kiskae
@Kiskae質問にスタックトレースを追加しました –
@Rotwang重複としてマークされているものを削除してください。あなたは、誰かがNPEが何であるかを尋ねているところで簡単な質問を参照しました。これは一般的なNPEの質問ではありません。 –