每次布局更改时强制关闭错误

问题描述:

我每次混淆相对布局的位置时,我的应用程序强制关闭。我必须随意重新定位它们以使应用程序再次运行。或将它们全部放在最左上角,然后重新排列它们。每次布局更改时强制关闭错误

我正在使用Eclipse。

为什么会发生这种情况?有没有办法可以避免这种情况?

[编辑]

07-22 21:39:22.042:d/dalvikvm(520):GC_EXTERNAL_ALLOC释放291K,52% 免费2718K/5639K,外部741K/1038K,暂停51ms

07-22 21:39:22.422:d/AndroidRuntime(520):关闭VM 07-22 21:39:22.432:W/dalvikvm(520):线程ID = 1:螺纹带 未捕获的异常退出(group = 0x40015560)

07- 22 21:39:22.443:E/AndroidRuntime(520):致命异常:主 07-22 21:39:22.443:E/AndroidRuntime(520):了java.lang.RuntimeException: 无法启动活动

ComponentInfo {com.android.tapme/com.android.tapme.TapMe}: java.lang.ClassCastException:android.widget.TextView

07-22 21:39:22.443:E/AndroidRuntime(520):在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)

07-22 21:39:22.443:E/AndroidRuntime(520):在 android.app.ActivityThread.handleLaun chActivity(ActivityThread.java:1663)

07-22 21:39:22.443:E/AndroidRuntime(520):在 android.app.ActivityThread.access $ 1500(ActivityThread.java:117)

07 -22 21:39:22.443:E/AndroidRuntime(520):at android.app.ActivityThread $ H.handleMessage(ActivityThread.java:931)

07-22 21:39:22.443:E/AndroidRuntime 520):在 android.os.Handler.dispatchMessage(Handler.java:99)

07-22 21:39:22.443:E/AndroidRuntime(520):在 android.os.Looper.loop(Looper.java:123)

07-22 21:39:22.443:E/AndroidRuntime(520):在 android.app.ActivityThread.main(ActivityThread.java:3683 )

07-22 21:39:22.443:E/AndroidRuntime(520):在 java.lang.reflect.Method.invokeNative(本机方法)

07-22 21:39:22.443:电子/ AndroidRuntime(520):at java.lang.reflect.Method.invoke(Method.java:507)

07-22 21:39:22.443:E/AndroidRuntime(520):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:839)

07-22 21:39:22.443:E/AndroidRuntime(520):在 com.android。internal.os.ZygoteInit.main(ZygoteInit.java:597)

07-22 21:39:22.443:E/AndroidRuntime(520):在 dalvik.system.NativeStart.main(本机方法)

07-22 21:39:22.443:E/AndroidRuntime(520): java.lang.ClassCastException:android.widget.TextView

07-22 21:39:22.443:致E/AndroidRuntime(520 ):在 com.android.tapme.TapMe.onCreate(TapMe.java:26)

07-22 21:39:22.443:E/AndroidRuntime(520):在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)

07-22 21:39:22.443:E/AndroidRuntime(520):在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611 ) 07-22 21:39:22.443:E/AndroidRuntime(520):11 ...更多

[编辑]

我随意编辑的布局,并最终得到它的工作。然后我添加了一个进度条,瞧!再次强制关闭错误。这是日志。

07-26 00:06:57.445:d/AndroidRuntime(876):关闭VM

07-26 00:06:57.465:W/dalvikvm(876):线程ID = 1:螺纹与未捕获的异常退出(组= 0x40015560)

07-26 00:06:57.486:E/AndroidRuntime(876):致命异常:主

07-26 00:06:57.486:E/AndroidRuntime( 876):java.lang.RuntimeException:无法实例化活动ComponentInfo {com.android.tapme/com.android.tapme.TapMe}:java.lang.NullPointerException

07-26 00:06:57.486:E/AndroidRuntime(876):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1569)

07-26 00:06:57.486:E/AndroidRuntime (876):at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)

07-26 00:06:57.486:E/AndroidRuntime(876):at android.app.ActivityThread.access $ 1500(ActivityThread的.java:117)

07-26 00:06:57.486:E/AndroidRuntime(876):在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:931)

E/AndroidRuntime(876):at android.os.Handler.dispatchMessage(Handler.java:99)

07-26 00:06:57.486:E/AndroidRuntime 876):at android.os.Looper.loop(Looper.java:123)

07-26 00:06:57.486:E/AndroidRuntime(876):at android.app.ActivityThread.main(ActivityThread.java :3683)

07-26 00:06:57.486:E/AndroidRuntime(876):在java.lang.reflect.Method.invokeNative(本机方法)

07-26 00:06:57.486: E/AndroidRuntime(876):在java.lang.reflect.Method.invoke(Meth OD。Java的:507)

07-26 00:06:57.486:E/AndroidRuntime(876):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:839)

07 -26 00:06:57.486:E/AndroidRuntime(876):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)

07-26 00:06:57.486:E/AndroidRuntime (876):在dalvik.system.NativeStart.main(本机方法)

07-26 00:06:57.486:E/AndroidRuntime(876):通过引起:显示java.lang.NullPointerException

07-26 00:06:57.486:E/AndroidRuntime(876):at android.app.Activity.findViewById(Activity.java:1647)

07-26 00:06:57.486:E/AndroidRuntime 876):at com.android.tapme.TapMe。(TapMe.java:17)

07-26 00:06:57.486:E/AndroidRuntime(876):at java.lang.Class.newInstanceImpl(Native Method )

07-26 00:06:57.486:E/AndroidRuntime(876):在java.lang.Class.newInstance(Class.java:1409)

07-26 00:06:57.486:电子/ AndroidRuntime(876):在android.app.Instrumentation.newActivity(Instrumentation.java:1021)

07-26 00:06:57.486:E/AndroidRuntime(876):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1561)

07-26 00:06:57.486:E/AndroidRuntime(876):...更多

+0

你能粘贴异常吗? – sschrass 2012-07-22 16:02:04

+0

就是这样。 – 2012-07-22 16:11:36

+0

你能格式化它吗? – 2012-07-22 16:22:45

在RelativeLayout中,所有子元素都相对于彼此放置。

这是一段代码片段。

android:layout_below="@id/elementOne" 
android:layout_alignParentLeft="true" 
android:layout_toLeftOf="@+id/elementTwo" 

所以,混淆其中的一个,你会惹上一切。

+0

那回答我的问题如何?我知道这些职位将会改变。为什么会有致命的异常? – 2012-07-24 07:12:49