【发布时间】:2011-12-02 17:22:49
【问题描述】:
在设计程序时,我意识到我的布局行不通。所以我决定创建一个新布局,但是当我将布局添加到我的 setcontentview 时,我的应用程序崩溃了。当我切换回旧布局时,它运行良好。谁能告诉我我做错了什么。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="1280dp"
android:layout_height="800dp"
android:orientation="vertical">
<TextView
android:id="@+id/mainText"
android:layout_width="1150dp"
android:layout_height="50dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="50dp"
android:background="@drawable/text_box"
android:gravity="center_vertical"
android:paddingLeft="2sp"
android:text="@string/hello"
android:textColor="#000"
android:textSize="38sp" />
<Button
android:id="@+id/btnClear"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/mainText"
android:layout_marginRight="10dp"
android:background="@drawable/clear_btn"
android:onClick="clearbtn"
android:text="Clear"
android:textColor="#000"
android:textSize="24sp" />
/** A1 */
<RelativeLayout
android:id="@+id/rl_A1"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_marginLeft="45dp"
android:layout_marginTop="120dp" >
<ImageView
android:id="@+id/ivA1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnA1"
android:layout_width="150dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@color/white"/>
</RelativeLayout>
/** A2 */
<RelativeLayout
android:id="@+id/rl_A2"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/rl_A1"
android:layout_below="@+id/rl_A1"
android:layout_marginTop="20dp">
<ImageView
android:id="@+id/ivA2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnA2"
android:layout_width="150dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@color/white"/>
</RelativeLayout>
/** A3 */
<RelativeLayout
android:id="@+id/rl_A3"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/rl_A2"
android:layout_below="@+id/rl_A2"
android:layout_marginTop="20dp">
<ImageView
android:id="@+id/ivA3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnA3"
android:layout_width="150dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@color/white" />
</RelativeLayout>
/** A4 */
<RelativeLayout
android:id="@+id/rl_A4"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/rl_A3"
android:layout_below="@+id/rl_A3"
android:layout_marginTop="20dp">
<ImageView
android:id="@+id/ivA4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/quick_btn_background" />
<Button
android:id="@+id/btnA4"
android:layout_width="150dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@color/white" />
</RelativeLayout>
/** B1 */
<RelativeLayout
android:id="@+id/rl_B1"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignTop="@+id/rl_A1"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/rl_A1">
<ImageView
android:id="@+id/ivB1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnB1"
android:layout_width="150dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@drawable/calculator" />
</RelativeLayout>
/** B2 */
<RelativeLayout
android:id="@+id/rl_B2"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignTop="@+id/rl_A2"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/rl_A2" >
<ImageView
android:id="@+id/ivB2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnB2"
android:layout_width="150dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@color/white" />
</RelativeLayout>
/** B3 */
<RelativeLayout
android:id="@+id/rl_B3"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignTop="@+id/rl_A3"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/rl_A3">
<ImageView
android:id="@+id/ivB3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/page_btn_background" />
<Button
android:id="@+id/btnB3"
android:layout_width="150dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@color/white" />
</RelativeLayout>
/** B4 */
<RelativeLayout
android:id="@+id/rl_B4"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignTop="@+id/rl_A4"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/rl_A4" >
<ImageView
android:id="@+id/ivB4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnB4"
android:layout_width="150dp"
android:layout_height="110dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@color/white"/>
</RelativeLayout>
</RelativeLayout>
我是不是忘了做点什么?????????
更新*
错误日志:
12-02 14:32:41.537:D/AndroidRuntime(362):关闭 VM 12-02 14:32:41.537:W/dalvikvm(362):threadid = 1:线程退出 未捕获的异常(组=0x40014760)12-02 14:32:41.588: D/dalvikvm(362):GC_CONCURRENT 释放 76K,3% 释放 6620K/6791K,暂停 7ms+3ms 12-02 14:32:41.588: E/AndroidRuntime(362): 致命异常: 主要 12-02 14:32:41.588: E/AndroidRuntime(362): java.lang.RuntimeException:无法启动活动 组件信息{test.tablet.design/test.tablet.design.MainActivity}: java.lang.NullPointerException 12-02 14:32:41.588: E/AndroidRuntime(362):在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1736) 12-02 14:32:41.588: E/AndroidRuntime(362): 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1752) 1> 2-02 14:32:41.588: E/AndroidRuntime(362): 在 android.app.ActivityThread.access$1500(ActivityThread.java:123) 12-02 14:32:41.588:E/AndroidRuntime(362):在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:993) 12-02 14:32:41.588: E/AndroidRuntime(362): 在 android.os.Handler.dispatchMessage(Handler.java:99) 12-02 14:32:41.588:E/AndroidRuntime(362):在 android.os.Looper.loop(Looper.java:126) 12-02 14:32:41.588: E/AndroidRuntime(362):在 android.app.ActivityThread.main(ActivityThread.java:3997) 12-02 14:32:41.588:E/AndroidRuntime(362):在 java.lang.reflect.Method.invokeNative(Native Method) 12-02 14:32:41.588:E/AndroidRuntime(362):在 java.lang.reflect.Method.invoke(Method.java:491) 12-02 14:32:41.588: E/AndroidRuntime(362):在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841) 12-02 14:32:41.588: E/AndroidRuntime(362): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599) 12-02 14:32:41.588:E/AndroidRuntime(362):在 dalvik.system.NativeStart.main(本机方法)12-02 14:32:41.588: E/AndroidRuntime(362):引起:java.lang.NullPointerException 12-02 14:32:41.588:E/AndroidRuntime(362):在 test.tablet.design.MainActivity.onCreate(MainActivity.java:31) 12-02 14:32:41.588:E/AndroidRuntime(362):在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048) 12-02 14:32:41.588: E/AndroidRuntime(362): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1700) 12-02 14:32:41.588: E/AndroidRuntime(362): ... 11 更多
良好的布局
<TextView
android:id="@+id/mainText"
android:layout_width="1150dp"
android:layout_height="50dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="50dp"
android:background="@drawable/text_box"
android:gravity="center_vertical"
android:paddingLeft="2sp"
android:text="@string/hello"
android:textColor="#000"
android:textSize="38sp" />
<Button
android:id="@+id/btnClear"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/mainText"
android:layout_marginRight="10dp"
android:background="@drawable/clear_btn"
android:onClick="clearbtn"
android:text="Clear"
android:textColor="#000"
android:textSize="24sp" />
<ImageView
android:id="@+id/ivA1"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/mainText"
android:layout_below="@+id/mainText"
android:layout_marginLeft="45dp"
android:layout_marginTop="30dp"
android:background="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnA2"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/ivA1"
android:layout_below="@+id/ivA1"
android:layout_marginTop="20dp"
android:background="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnA3"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/btnA2"
android:layout_below="@+id/btnA2"
android:layout_marginTop="20dp"
android:background="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnA4"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/btnA3"
android:layout_below="@+id/btnA3"
android:layout_marginTop="20dp"
android:background="@drawable/quick_btn_background" />
<Button
android:id="@+id/btnB1"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignTop="@+id/ivA1"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/ivA1"
android:background="@drawable/calculator"/>
<Button
android:id="@+id/btnB2"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/btnB1"
android:layout_alignTop="@+id/btnA2"
android:background="@drawable/page_btn_background" />
<Button
android:id="@+id/btnB3"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/btnB2"
android:layout_alignTop="@+id/btnA3"
android:background="@drawable/page_btn_background" />
<Button
android:id="@+id/btnB4"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/btnB3"
android:layout_alignTop="@+id/btnA4"
android:background="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnC1"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignTop="@+id/btnB1"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/btnB1"
android:background="@drawable/page_btn_background" />
<Button
android:id="@+id/btnC2"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/btnC1"
android:layout_alignTop="@+id/btnB2"
android:background="@drawable/basic_btn_background" />
<Button
android:id="@+id/btnC3"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/btnC2"
android:layout_alignTop="@+id/btnB3"
android:background="@drawable/quick_btn_background" />
<Button
android:id="@+id/btnC4"
android:layout_width="170dp"
android:layout_height="130dp"
android:layout_alignLeft="@+id/btnC3"
android:layout_alignTop="@+id/btnB4"
android:background="@drawable/basic_btn_background" />
</RelativeLayout>
【问题讨论】:
-
您忘记发布崩溃时的堆栈跟踪;)
-
也许工作布局...
-
从 logcat 复制错误文本,然后将其放入您的问题中。你会得到更好的答案。
-
贴了Logcat,布局不错
标签: android android-relativelayout