Reputation: 21
I am beginner of Android studio. I got issue in layout at android:id with multiple implementation. I searched but it's showing links with- Include same layout multiple times- and Can I use the same id in different layout-Android Multiple Implementations of one element of the same Layout etc.,...
I tried to search on web too but I didn't find related information .The problem is in a layout I have used. The Button id is android:id="@+id/button_actionpage"
and also I have used the Button id below in DatePicker Button with android:layout_below="@+id/button_actionpage"
. So I got a issue in Activity.java with an error "java.lang.NullPointerException" due multiple implementation android:id in layout
I can't get a solution about android:id with multiple implementation in layout.
Here is my screen shot
Here is my layout code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button_store"
android:text="Store information"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Show Information"
android:id="@+id/button_show"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Date:"
android:id="@+id/date_reg"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ActionPage"
android:id="@+id/button_actionpage"
android:layout_marginTop="116dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<DatePicker
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/datePicker"
android:layout_below="@+id/button_actionpage"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
</RelativeLayout>
Logcat:
07-30 15:58:14.041 29642-29642/com.raj.androidapplication E/AndroidRuntime: FATAL EXCEPTION: main Process: com.raj.androidapplication, PID: 29642 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.raj.androidapplication/com.raj.androidapplication.LoginPrefActivity}: android.view.InflateException: Binary XML file line #25: Error inflating class java.lang.reflect.Constructor at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2335) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2397) at android.app.ActivityThread.access$800(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1310) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5268) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:902) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:697) Caused by: android.view.InflateException: Binary XML file line #25: Error inflating class java.lang.reflect.Constructor at android.preference.GenericInflater.createItem(GenericInflater.java:397) at android.preference.GenericInflater.onCreateItem(GenericInflater.java:417) at android.preference.GenericInflater.createItemFromTag(GenericInflater.java:428) at android.preference.GenericInflater.rInflate(GenericInflater.java:481) at android.preference.GenericInflater.rInflate(GenericInflater.java:493) at android.preference.GenericInflater.inflate(GenericInflater.java:326) at android.preference.GenericInflater.inflate(GenericInflater.java:263) at android.preference.PreferenceManager.inflateFromResource(PreferenceManager.java:272) at android.preference.PreferenceActivity.addPreferencesFromResource(PreferenceActivity.java:1513) at com.raj.androidapplication.LoginPrefActivity.onCreate(LoginPrefActivity.java:13) at android.app.Activity.performCreate(Activity.java:6033) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2288) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2397) at android.app.ActivityThread.access$800(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1310) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5268) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:902) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:697) Caused by: java.lang.reflect.InvocationTargetException at java.lang.reflect.Constructor.newInstance(Native Method) at java.lang.reflect.Constructor.newInstance(Constructor.java:288) at android.preference.GenericInflater.createItem(GenericInflater.java:383) at android.preference.GenericInflater.onCreateItem(GenericInflater.java:417) at android.preference.GenericInflater.createItemFromTag(GenericInflater.java:428) at android.preference.GenericInflater.rInflate(GenericInflater.java:481) at android.preference.GenericInflater.rInflate(GenericInflater.java:493) at android.preference.GenericInflater.inflate(GenericInflater.java:326) at android.preference.GenericInflater.inflate(GenericInflater.java:263) at android.preference.PreferenceManager.inflateFromResource(PreferenceManager.java:272) at android.preference.PreferenceActivity.addPreferencesFromResource(PreferenceActivity.java:1513) at com.raj.androidapplication.LoginPrefActivity.onCreate(LoginPrefActivity.java:13) at android.app.Activity.performCreate(Activity.java:6033) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2288) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2397) at android.app.ActivityThread.access$800(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1310) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5268) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:902) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:697) Caused by: java.lang.NullPointerException: Attempt to get length of null array at android.content.res.AssetManager.getResourceTextArray(AssetManager.java:226) at android.content.res.Resources.getTextArray(Resources.java:518) at android.content.res.TypedArray.getTextArray(TypedArray.java:771) at android.preference.ListPreference.(ListPreference.java:51) at android.preference.ListPreference.(ListPreference.java:65) at android.preference.ListPreference.(ListPreference.java:69) at java.lang.reflect.Constructor.newInstance(Native Method) at java.lang.reflect.Constructor.newInstance(Constructor.java:288) at android.preference.GenericInflater.createItem(GenericInflater.java:383) at android.preference.GenericInflater.onCreateItem(GenericInflater.java:417) at android.preference.GenericInflater.createItemFromTag(GenericInflater.java:428) at android.preference.GenericInflater.rInflate(GenericInflater.java:481) at android.preference.GenericInflater.rInflate(GenericInflater.java:493) at android.preference.GenericInflater.inflate(GenericInflater.java:326) at android.preference.GenericInflater.inflate(GenericInflater.java:263) at android.preference.PreferenceManager.inflateFromResource(PreferenceManager.java:272) at android.preference.PreferenceActivity.addPreferencesFromResource(PreferenceActivity.java:1513) at com.raj.androidapplication.LoginPrefActivity.onCreate(LoginPrefActivity.java:13) at android.app.Activity.performCreate(Activity.java:6033) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2288) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2397) at android.app.ActivityThread.access$800(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1310) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5268) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:902) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:697)
Upvotes: 2
Views: 871
Reputation: 452
As per Android Multiple Implementations of one element of the same Layout
File -> Invalidate Cache/ Restart...-> Invalidate and Restart.
should solve the problem
Upvotes: 2