public class MyActivity extends Activity {
Context context;
List<String> tasks;
ArrayAdapter<String> adapter;
/**
* Called when the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
context = this;
tasks = new ArrayList<String>();
Button add = (Button) findViewById(R.id.button);
add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
EditText editText = (EditText) findViewById(R.id.editText);
editText.setVisibility(1);
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(editText, 0);
String value = editText.getText().toString();
tasks.add(value);
adapter = new ArrayAdapter<String>(context,R.id.listView,tasks);
ListView listView = (ListView) findViewById(R.id.listView);
listView.setAdapter(adapter);
}
});
}
}
ここでは、ユーザーから値を取得しています。リストビューに動的に追加しようとしています。しかし、「残念ながらアプリが閉じられました」というエラーが表示されています。タスク変数への文字列値の追加に失敗しています。tasks は文字列のリストです。
tasks.add(value);
何か他のものを追加しようとすると、失敗します。お気に入り、
tasks.add("something");
何が問題なのかわからない。しかし、この行を削除するとアプリが正常に動作するため、この行で失敗していると確信しています。なぜ失敗するのか誰かが知っているなら、私に知らせてください。前もって感謝します。