您好我有一个布局,其中有4个Button
,Button
放在一个单独的LinearLayout
中。 LinearLayout
已为其分配了ID。现在在我的活动中保存了这个布局,我正在创建LinearLayout
个变量并为它们分配id。
现在,当我尝试运行代码时,会显示以下错误。![在此处输入图像说明] [1]
10-19 12:36:43.899: E/AndroidRuntime(21774): FATAL EXCEPTION: main
10-19 12:36:43.899: E/AndroidRuntime(21774): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.code.accountmanager/com.code.accountmanager.AccountManagerActivity}: java.lang.NullPointerException
也
10-19 12:36:43.899: E/AndroidRuntime(21774): Caused by: java.lang.NullPointerException
10-19 12:36:43.899: E/AndroidRuntime(21774): at android.app.Activity.findViewById(Activity.java:1825)
10-19 12:36:43.899: E/AndroidRuntime(21774): at com.code.accountmanager.AccountManagerActivity.<init>(AccountManagerActivity.java:22)
显示错误的行也是:
LinearLayout l4 = (LinearLayout) findViewById(R.id.anim_recent_transaction);
LinearLayout l3 = (LinearLayout) findViewById(R.id.anim_view_account);
LinearLayout l2 = (LinearLayout) findViewById(R.id.anim_add_transaction);
LinearLayout l1 = (LinearLayout) findViewById(R.id.anim_add_account);
这是xml代码
<LinearLayout
android:id="@+id/buttonHolder"
android:layout_width="120dp"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/anim_add_account"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center" >
<ImageButton
android:id="@+id/addAccount"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_gravity="center"
android:background="@drawable/addaccount_new"
android:gravity="center" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="10dp" />
<LinearLayout
android:id="@+id/anim_add_transaction"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center" >
<ImageButton
android:id="@+id/addTransaction"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_gravity="center"
android:background="@drawable/addtransaction_new"
android:gravity="center" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="10dp" />
<LinearLayout
android:id="@+id/anim_view_account"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center" >
<ImageButton
android:id="@+id/viewAccount"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_gravity="center"
android:background="@drawable/viewaccounts_new"
android:gravity="center" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="10dp" />
<LinearLayout
android:id="@+id/anim_recent_transaction"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center" >
<ImageButton
android:id="@+id/recentTransaction"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_gravity="center"
android:background="@drawable/viewtransaction_new"
android:gravity="center" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
请告诉我如何删除错误。
答案 0 :(得分:2)
您应该在使用setContentView(R.layout.yourLayoutXML)
之前添加findViewById
。
我想这可能是你的问题
答案 1 :(得分:0)
如果您提供了布局xml文件的完整代码,那么最好确定您的错误。
在我的观点中,识别此类错误的最佳方法是调试您的代码。
这里是您可以了解最佳调试方式的链接。
祝你好运!!