基本的に、アプリの一部としていくつかの日付を操作するために、簡単なクラスを作成しました。私はJavaに精通しているわけではないので、日付を処理するコード、主にカレンダークラスをオンラインで見つけました。そこで、サンプルコードからいくつかの部分を取り出して、次のクラスを考え出しました。
package com.example.myApp;
import java.util.Calendar;
import android.util.Log;
public class Date {
public int day;
public int month;
public int year;
public String formattedDate;
public Calendar calendar;
public Date(){
//Set to today by default.
// Create a Calendar object
Calendar calendar = Calendar.getInstance();
// Get current day from calendar
day = calendar.get(Calendar.DATE);
// Get current month from calendar
month = calendar.get(Calendar.MONTH);
// Get current year from calendar
year = calendar.get(Calendar.YEAR);
}
public String getDate(){
formattedDate = day+"/"+month+"/"+year;
return formattedDate;
}
public void incDate(){
calendar.add(Calendar.DATE, +1);
}
}
メインアクティビティでincDate()メソッドを実行すると、プログラムがクラッシュします。このクラスはかなり基本的なものであり、私が持っている他のクラスと比べて完全にうまく機能する唯一の違いは、通常のインスタンス化ではなく、カレンダーのインスタンスを宣言することです。これが問題だと思います。
問題のメソッドがアプリのクラッシュを引き起こしている理由を誰かが説明できれば、私は非常に感謝しています。
PS。私はこのクラスに基づいてさらにメソッドを追加するつもりですが、上記の理由から、現時点では明らかに無意味なベンチャーです。