【发布时间】:2020-06-17 19:10:00
【问题描述】:
正如我的标题所说,我的应用程序在 Android Studio (JAVA) 中遇到问题,当类扩展 LinearLayout 时,如何将类作为 Activity 调用?
我的班级是:
public class CustomCalendar extends LinearLayout {
我尝试调用它的代码:
Intent customCalendar = new Intent(MainActivity.this, CustomCalendarActivity.class);
startActivity(customCalendar);
我试着做这个:
public class CustomCalendarActivity extends AppCompatActivity {
CustomCalendar customCalendar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
customCalendar = (CustomCalendar) findViewById(R.id.kalendoriaus_virsus);
customCalendar.SetUpCalendar();
}
}
我的崩溃是这样的:
java.lang.NullPointerException: Attempt to invoke virtual method 'void com.example.kalendorius.CustomCalendar.SetUpCalendar()' on a null object reference
at com.example.kalendorius.MainActivity$2.onClick(MainActivity.java:75)
75 行是:
startActivity(customCalendar);
我如何设置我的日历:
我的 kalendorius.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/kalendoriaus_virsus"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/soft_blue_green"
android:orientation="horizontal"
android:paddingTop="8dp"
android:paddingBottom="8dp">
<ImageButton
android:id="@+id/atgalBtn"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_margin="10dp"
android:background="@drawable/back" />
<TextView
android:id="@+id/dabartineData"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:layout_weight="3"
android:gravity="center"
android:text="Data"
android:textColor="#ffffff"
android:textSize="18sp"
android:textStyle="bold" />
这只是我使用 kalendorius_virsus 的一些代码。
完成。我弄清楚是什么问题。我只是忘记为数据库构造函数生成:D 感谢所有试图提供帮助的人。
【问题讨论】:
-
检查 kalendriaus_virsus 是 XML 中的 id。您可能需要添加 XML 和更多代码。错误可能是由于 customCalendar 为 null 然后调用 setupcalendar();
-
您是否在
onCreate()的Activity中致电setContentView()?您需要这样做来告诉Activity要使用哪个布局 XML 文件。 -
哪一项活动?在我调用 CustomCalendar 的 MainActivity 中?
-
不,在
CustomCalendarActivity -
但看起来崩溃发生在
MainActivity中的onClick()方法中。请将该方法的代码(包括第 75 行)添加到您的问题中(只需编辑问题)
标签: java android class android-activity crash