错误/AndroidRuntime(219): java.lang.RuntimeException: 无法启动活动 ComponentInfo{elf.app/elf.app.RoomInfoActivity}: java.lang.NullP

发布于 2024-11-07 16:44:42 字数 6082 浏览 0 评论 0原文

LogCat:

05-18 13:35:31.954: INFO/ActivityManager(51): Starting activity: Intent { cmp=elf.app/.RoomInfoActivity (has extras) }
05-18 13:35:32.535: WARN/ActivityManager(51): Activity pause timeout for HistoryRecord{44e19170 elf.app/.RoomListActivity}
05-18 13:35:37.623: WARN/WindowManager(51): Key dispatching timed out sending to elf.app/elf.app.RoomListActivity
05-18 13:35:37.623: WARN/WindowManager(51): Dispatch state: null
05-18 13:35:37.634: WARN/WindowManager(51): Current state:  {{null to Window{44e364d8 elf.app/elf.app.RoomListActivity paused=false} @ 1305725737637 lw=null lb=null fin=true gfw=true ed=true tts=0 wf=false fp=false mcf=null}}
05-18 13:35:37.634: WARN/WindowManager(51): Continuing to wait for key to be dispatched
05-18 13:35:37.664: WARN/WindowManager(51): No window to dispatch pointer action 0
05-18 13:35:37.674: WARN/WindowManager(51): No window to dispatch pointer action 1
05-18 13:35:42.018: WARN/ActivityManager(51): Launch timeout has expired, giving up wake lock!
05-18 13:35:42.608: WARN/ActivityManager(51): Activity idle timeout for HistoryRecord{44e1eff0 elf.app/.RoomInfoActivity}
05-18 13:35:43.434: DEBUG/dalvikvm(51): threadid=15: bogus mon 1+0>0; adjusting
05-18 13:37:03.754: DEBUG/AndroidRuntime(219): Shutting down VM
05-18 13:37:03.754: WARN/dalvikvm(219): threadid=3: thread exiting with uncaught exception (group=0x4001b188)
05-18 13:37:05.425: ERROR/AndroidRuntime(219): Uncaught handler: thread main exiting due to uncaught exception
05-18 13:37:05.554: ERROR/AndroidRuntime(219): java.lang.RuntimeException: Unable to start activity ComponentInfo{elf.app/elf.app.RoomInfoActivity}: java.lang.NullPointerException
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2496)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread.access$2200(ActivityThread.java:119)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.os.Looper.loop(Looper.java:123)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread.main(ActivityThread.java:4363)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at java.lang.reflect.Method.invokeNative(Native Method)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at java.lang.reflect.Method.invoke(Method.java:521)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at dalvik.system.NativeStart.main(Native Method)
05-18 13:37:05.554: ERROR/AndroidRuntime(219): Caused by: java.lang.NullPointerException
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at elf.app.RoomInfoActivity.onCreate(RoomInfoActivity.java:39)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     ... 11 more
05-18 13:37:05.724: INFO/Process(51): Sending signal. PID: 219 SIG: 3
05-18 13:37:05.736: INFO/dalvikvm(219): threadid=7: reacting to signal 3
05-18 13:37:05.736: ERROR/dalvikvm(219): Unable to open stack trace file '/data/anr/traces.txt': Permission denied
05-18 13:37:06.025: INFO/ARMAssembler(51): generated scanline__00000077:03515104_00000000_00000000 [ 33 ipp] (47 ins) at [0x40d678:0x40d734] in 855613 ns
05-18 13:37:06.094: INFO/ARMAssembler(51): generated scanline__00000177:03515104_00001001_00000000 [ 91 ipp] (114 ins) at [0x41eee8:0x41f0b0] in 1649122 ns

代码:

package elf.app;

import elf.app.comm.CommClientMod;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

    /**
     * displays details about the selected room
     */
public class RoomInfoActivity extends Activity implements OnClickListener {
    TextView rumInfo;
    CharSequence rumInfoText;
    Button buttonCleaned;
    CharSequence buttonCleanedText;
    TextView rumStatus;
    CharSequence rumStatusText;

    CommClientMod comm;
    boolean cleaned = false;


    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.room_info);

        comm = new CommClientMod("127.0.0.1", 62626);
        rumInfo = (TextView)findViewById(R.id.textInfo);
        buttonCleaned = (Button)findViewById(R.id.buttonCleaned);
        rumStatus = (TextView)findViewById(R.id.textStatus);


        rumInfoText = (CharSequence)getIntent().getExtras().getString("entry");
        rumInfo.setText(rumInfoText);
        buttonCleanedText = "Färdig med städningen";
        buttonCleaned.setText(buttonCleanedText);
        rumStatusText = (CharSequence)"Status: "+checkStatus();
        rumStatus.setText(rumStatusText);
    }

    public void onClick(View v) {
        if(v.equals(buttonCleaned)) {
            if(cleaned==false) {
                cleaned=true;
                comm.send("skicka meddelande rummet är städat");
            }
            else {
                cleaned=false;
                comm.send("skicka meddelande rummet är inte städat");
            }
        }
    }

    public String checkStatus() {
        if(cleaned==false)
            return "Ej städat";
        else
            return "Städat";
    }


}

不太明白为什么我在这里收到 RuntimeException 。

LogCat:

05-18 13:35:31.954: INFO/ActivityManager(51): Starting activity: Intent { cmp=elf.app/.RoomInfoActivity (has extras) }
05-18 13:35:32.535: WARN/ActivityManager(51): Activity pause timeout for HistoryRecord{44e19170 elf.app/.RoomListActivity}
05-18 13:35:37.623: WARN/WindowManager(51): Key dispatching timed out sending to elf.app/elf.app.RoomListActivity
05-18 13:35:37.623: WARN/WindowManager(51): Dispatch state: null
05-18 13:35:37.634: WARN/WindowManager(51): Current state:  {{null to Window{44e364d8 elf.app/elf.app.RoomListActivity paused=false} @ 1305725737637 lw=null lb=null fin=true gfw=true ed=true tts=0 wf=false fp=false mcf=null}}
05-18 13:35:37.634: WARN/WindowManager(51): Continuing to wait for key to be dispatched
05-18 13:35:37.664: WARN/WindowManager(51): No window to dispatch pointer action 0
05-18 13:35:37.674: WARN/WindowManager(51): No window to dispatch pointer action 1
05-18 13:35:42.018: WARN/ActivityManager(51): Launch timeout has expired, giving up wake lock!
05-18 13:35:42.608: WARN/ActivityManager(51): Activity idle timeout for HistoryRecord{44e1eff0 elf.app/.RoomInfoActivity}
05-18 13:35:43.434: DEBUG/dalvikvm(51): threadid=15: bogus mon 1+0>0; adjusting
05-18 13:37:03.754: DEBUG/AndroidRuntime(219): Shutting down VM
05-18 13:37:03.754: WARN/dalvikvm(219): threadid=3: thread exiting with uncaught exception (group=0x4001b188)
05-18 13:37:05.425: ERROR/AndroidRuntime(219): Uncaught handler: thread main exiting due to uncaught exception
05-18 13:37:05.554: ERROR/AndroidRuntime(219): java.lang.RuntimeException: Unable to start activity ComponentInfo{elf.app/elf.app.RoomInfoActivity}: java.lang.NullPointerException
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2496)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread.access$2200(ActivityThread.java:119)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.os.Looper.loop(Looper.java:123)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread.main(ActivityThread.java:4363)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at java.lang.reflect.Method.invokeNative(Native Method)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at java.lang.reflect.Method.invoke(Method.java:521)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at dalvik.system.NativeStart.main(Native Method)
05-18 13:37:05.554: ERROR/AndroidRuntime(219): Caused by: java.lang.NullPointerException
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at elf.app.RoomInfoActivity.onCreate(RoomInfoActivity.java:39)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
05-18 13:37:05.554: ERROR/AndroidRuntime(219):     ... 11 more
05-18 13:37:05.724: INFO/Process(51): Sending signal. PID: 219 SIG: 3
05-18 13:37:05.736: INFO/dalvikvm(219): threadid=7: reacting to signal 3
05-18 13:37:05.736: ERROR/dalvikvm(219): Unable to open stack trace file '/data/anr/traces.txt': Permission denied
05-18 13:37:06.025: INFO/ARMAssembler(51): generated scanline__00000077:03515104_00000000_00000000 [ 33 ipp] (47 ins) at [0x40d678:0x40d734] in 855613 ns
05-18 13:37:06.094: INFO/ARMAssembler(51): generated scanline__00000177:03515104_00001001_00000000 [ 91 ipp] (114 ins) at [0x41eee8:0x41f0b0] in 1649122 ns

Code:

package elf.app;

import elf.app.comm.CommClientMod;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

    /**
     * displays details about the selected room
     */
public class RoomInfoActivity extends Activity implements OnClickListener {
    TextView rumInfo;
    CharSequence rumInfoText;
    Button buttonCleaned;
    CharSequence buttonCleanedText;
    TextView rumStatus;
    CharSequence rumStatusText;

    CommClientMod comm;
    boolean cleaned = false;


    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.room_info);

        comm = new CommClientMod("127.0.0.1", 62626);
        rumInfo = (TextView)findViewById(R.id.textInfo);
        buttonCleaned = (Button)findViewById(R.id.buttonCleaned);
        rumStatus = (TextView)findViewById(R.id.textStatus);


        rumInfoText = (CharSequence)getIntent().getExtras().getString("entry");
        rumInfo.setText(rumInfoText);
        buttonCleanedText = "Färdig med städningen";
        buttonCleaned.setText(buttonCleanedText);
        rumStatusText = (CharSequence)"Status: "+checkStatus();
        rumStatus.setText(rumStatusText);
    }

    public void onClick(View v) {
        if(v.equals(buttonCleaned)) {
            if(cleaned==false) {
                cleaned=true;
                comm.send("skicka meddelande rummet är städat");
            }
            else {
                cleaned=false;
                comm.send("skicka meddelande rummet är inte städat");
            }
        }
    }

    public String checkStatus() {
        if(cleaned==false)
            return "Ej städat";
        else
            return "Städat";
    }


}

Don't really understand why I'm getting a RuntimeException here..

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

羁客 2024-11-14 16:44:42

如果代码中的行号与您的pastebin匹配,则会出现buttonCleaned = (Button)findViewById(R.id.buttonCleaned);没有找到那个视图。 R.layout.room_info 中是否存在?

if the line numbers from the code match your pastebin, it appears buttonCleaned = (Button)findViewById(R.id.buttonCleaned); is not finding that view. Does it exist in R.layout.room_info?

左耳近心 2024-11-14 16:44:42

请注意,在使用属于该视图的任何组件(例如按钮)之前,必须先放置 setContentView(...) 。否则,将引发空异常。

Just make a note that you have to put the setContentView(...) before using any component (e.g a button) belong to that view. Otherwise, the null exception will be raised.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文