Reputation: 179
I am getting this weird error, it seems like every time I edit the position of the child views in my RelativeLayout by code I get a runtime error like FATAL EXCEPTION: MAIN, and a ClassCastException: ChildView's class.
At first it was my ImageView, so I tried moving it using the GUI in Eclipse, then it was my LinearLayout so I did the same, but then it juggles back to the ImageView, and so on.. I wonder what's wrong with my Layout? Here's my main.xml coding:
<TextView android:id="@+id/txtVersion" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:padding="10dp" android:text="version 1.0" android:textColor="#000000" android:textSize="15sp" android:textStyle="bold" /> <TextView android:id="@+id/txtLogo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:background="@drawable/logo_background" android:gravity="center" android:padding="20dp" android:paddingBottom="5dp" android:paddingRight="20dp" android:paddingTop="5dp" android:text="Ngaji Yuk" android:textColor="#FFFFFF" android:textSize="25sp" android:textStyle="bold" /> <LinearLayout android:id="@+id/linearLayout1" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_alignParentRight="true" android:layout_alignParentTop="true" android:gravity="center" android:orientation="vertical" android:paddingBottom="5dp" android:paddingRight="20dp" android:paddingTop="5dp" > <Button android:id="@+id/btnRead" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/button_background" android:gravity="center" android:padding="20dp" android:paddingBottom="5dp" android:paddingLeft="20dp" android:paddingRight="20dp" android:paddingTop="5dp" android:text="Mulai Ngaji" android:textColor="#FFFFFF" android:textSize="20sp" android:textStyle="bold" /> <Button android:id="@+id/btnIndex" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/button_background" android:gravity="center" android:padding="20dp" android:paddingBottom="5dp" android:paddingLeft="20dp" android:paddingRight="20dp" android:paddingTop="5dp" android:text="Indeks" android:textColor="#FFFFFF" android:textSize="20sp" android:textStyle="bold" /> <Button android:id="@+id/btnAbout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/button_background" android:gravity="center" android:padding="20dp" android:paddingBottom="5dp" android:paddingLeft="20dp" android:paddingRight="20dp" android:paddingTop="5dp" android:text="Tentang Aplikasi" android:textColor="#FFFFFF" android:textSize="20sp" android:textStyle="bold" /> </LinearLayout> <ImageView android:id="@+id/imgMamat" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:src="@drawable/ic_launcher" />
There is no coding in my MainActivity except assigning variable and that's only to the Buttons inside the LinearLayout.
Oh and do excuse me if it's a silly question, I'm a total beginner in Android, thank you.
edit: Here's my Logcat:
05-18 11:17:08.920: E/AndroidRuntime(516): FATAL EXCEPTION: main 05-18 11:17:08.920: E/AndroidRuntime(516): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.rangga.elearning.ngaji/com.rangga.elearning.ngaji.MainActivity}: java.lang.ClassCastException: android.widget.LinearLayout 05-18 11:17:08.920: E/AndroidRuntime(516): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) 05-18 11:17:08.920: E/AndroidRuntime(516): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 05-18 11:17:08.920: E/AndroidRuntime(516): at android.app.ActivityThread.access$2300(ActivityThread.java:125) 05-18 11:17:08.920: E/AndroidRuntime(516): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 05-18 11:17:08.920: E/AndroidRuntime(516): at android.os.Handler.dispatchMessage(Handler.java:99) 05-18 11:17:08.920: E/AndroidRuntime(516): at android.os.Looper.loop(Looper.java:123) 05-18 11:17:08.920: E/AndroidRuntime(516): at android.app.ActivityThread.main(ActivityThread.java:4627) 05-18 11:17:08.920: E/AndroidRuntime(516): at java.lang.reflect.Method.invokeNative(Native Method) 05-18 11:17:08.920: E/AndroidRuntime(516): at java.lang.reflect.Method.invoke(Method.java:521) 05-18 11:17:08.920: E/AndroidRuntime(516): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 05-18 11:17:08.920: E/AndroidRuntime(516): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 05-18 11:17:08.920: E/AndroidRuntime(516): at dalvik.system.NativeStart.main(Native Method) 05-18 11:17:08.920: E/AndroidRuntime(516): Caused by: java.lang.ClassCastException: android.widget.LinearLayout 05-18 11:17:08.920: E/AndroidRuntime(516): at com.rangga.elearning.ngaji.MainActivity.onCreate(MainActivity.java:35) 05-18 11:17:08.920: E/AndroidRuntime(516): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 05-18 11:17:08.920: E/AndroidRuntime(516): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 05-18 11:17:08.920: E/AndroidRuntime(516): ... 11 more
Cleaning the project seems to fixed it. It's kinda annoying when problems like this show up, even though all the codes shows no error >.<
Upvotes: 1
Views: 198
Reputation: 46
try clean and build, it may be due to some previous refences of the xml views remain
Upvotes: 1