1

フォルダ内のファイル Exercises.txt から演習のリストを読み込もうとしてい/assestsますが、その方法の例がたくさん見つかりましたが、「コンテキストを解決できません」というエラーが表示され続け、それを修正できた場合は、 「デフォルトコンストラクターは、暗黙的なスーパーコンストラクターによってスローされた例外タイプ IOException を処理できません。明示的なコンストラクターを定義する必要があります」というメッセージが表示されます。

これが私のコードです:

class ChooseExercises extends ListActivity{

    String[] exercises;

    AssetManager am = context.getAssets();  //Error 1
    InputStream inputStream = am.open("test.txt"); //Error 2
    InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
    BufferedReader bufferedReader = new BufferedReader(inputStreamReader);

    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
        // TODO Auto-generated method stub
        super.onListItemClick(l, v, position, id);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.choose_exercises);
    }

}

助けてくれてありがとう。

4

2 に答える 2

4

という名前contextのものはないため、データ メンバ初期化子から参照することはできません。

したがって、最初に自分AssetManagerと後続のデータ メンバーをローカル変数として に移動し、単ににonCreate()置き換えると、より良い状態になります。context.getAssets()getAssets()

class ChooseExercises extends ListActivity{
    String[] exercises;

    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
        // TODO Auto-generated method stub
        super.onListItemClick(l, v, position, id);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.choose_exercises);

        AssetManager am = context.getAssets();  //Error 1
        InputStream inputStream = am.open("test.txt"); //Error 2
        InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
        BufferedReader bufferedReader = new BufferedReader(inputStreamReader);

        // TODO: actually use this stuff
    }
}

後で、Java と Android に慣れてきたら、このディスク I/O をバックグラウンド スレッドに移動します。

于 2013-08-05T23:58:02.810 に答える