2

編集

発生した問題は、マニフェストの設定アクティビティの親をすべて小文字に設定したことが原因でした。これは、メインアクティビティへのパスの正しい形式ではありませんでした。


このアプリの最初の目標は、データを(外部SDカードのテキストファイルに)ロードおよび保存するためのロードおよび保存ボタンを正常に実装することでした。この機能の実装に成功した後、フォントサイズと色に変更される設定ファイルを使用して共有設定を試してみることにしました。インテントを介して設定アクティビティを実行するメニューを設定しました。設定アクティビティはSDKによって生成されましたが、アクションバーの戻るボタンを押すとクラッシュするようです。 アプリのスクリーンショットlogcatファイル、および私のソースコードを以下に示します。お時間をいただきありがとうございます!


これは、設定アクティビティを開始するために使用される方法です。

public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case R.id.menu_settings:
            Intent intent = new Intent(this, SettingsActivity.class);
            startActivity(intent);
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}

これは、生成された設定アクティビティです。

package com.spacemanspiff.savefiles;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.support.v4.app.NavUtils;

public class SettingsActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_settings);
    getActionBar().setDisplayHomeAsUpEnabled(true);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_settings, menu);
    return true;
}


@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case android.R.id.home:
            NavUtils.navigateUpFromSameTask(this);
            return true;
    }
    return super.onOptionsItemSelected(item);
}

}


4

1 に答える 1