通过不同的方法应用 class 日历

Applying class calendar via different method

我正在尝试在我的一个片段中创建 calendar,但我不知道如何将日历 class 调用到 onCreate();在 fragmentTwo.java 中发挥作用。 我试过这个,但我不断收到错误消息:

FATAL ERROR Attempt to invoke virtual method 'android.view.Window$Callback android.view.Window.getCallback()' on a null object reference

.

fragmentTwo.java:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Calendar calendar = new Calendar();
    calendar.setContentView(R.layout.calendar);
}

Calendar.java:

public class Calendar extends AppCompatActivity {

    CalendarView calendarView;
    TextView dateDisplay;

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

        calendarView = (CalendarView) findViewById(R.id.calendarView);
        dateDisplay = (TextView) findViewById(R.id.date_display);
        dateDisplay.setText("Date: ");

        calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
            @Override
            public void onSelectedDayChange(CalendarView calendarView, int i, int i1, int i2) {
                dateDisplay.setText("Date: " + i2 + " / " + i1 + " / " + i);

                Toast.makeText(getApplicationContext(), "Selected Date:\n" + "Day = " + i2 + "\n" + "Month = " + i1 + "\n" + "Year = " + i, Toast.LENGTH_LONG).show();
            }
        });
    }
}

如何在我的 fragmentTwo onCreate() 函数中应用日历 class?

Fragment 中的 onCreate() 方法在 Activity 的 onAttachFragment() 之后但在该 Fragment 的 onCreateView().

之前调用

所以基本上你不能在 onCreate() 中查看内容。

所以你需要添加这两行

Calendar calendar = new Calendar();
calendar.setContentView(R.layout.calendar);

onCreateView()

Link 到 docs