private TextView mStatus;
이렇게 textview 객체를 만들고
onCreate 함수안에서
mStatus = (TextView) findViewById(R.id.textview);
이렇게 정의를 해주었습니다. 레이아웃파일에는 textview라고 되어있는 텍스트 상자가 존재하구요
private final Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case MESSAGE_STATE_CHANGE:
if (D)
Log.i(TAG, "MESSAGE_STATE_CHANGE: " + msg.arg1);
switch (msg.arg1) {
case BluetoothTest.STATE_CONNECTED:
mStatus.setText(R.string.status_connected_to);
mStatus.append(mConnectedDeviceName);
break;
case BluetoothTest.STATE_CONNECTING:
mStatus.setText(R.string.status_connecting);
break;
case BluetoothTest.STATE_LISTEN:
case BluetoothTest.STATE_NONE:
mStatus.setText(R.string.status_not_connected);
break;
}
break;
case MESSAGE_READ:
.
.
.
.
요런 핸들메세지 함수가 존재합니다.
이안에서 switch ~ case문을 통해 따로 메세지를 출력해주려고 하는데
mStatus.setText(R.string.status_connected_to);
와 같은 setText 부분에서 프로그램이 죽습니다.
Log 내용은
04-11 11:36:17.190: E/AndroidRuntime(9731): FATAL EXCEPTION: main
04-11 11:36:17.190: E/AndroidRuntime(9731): java.lang.NullPointerException
04-11 11:36:17.190: E/AndroidRuntime(9731): at com.shj.Test.TestActivity$1.handleMessage(TestActivity.java:411)
04-11 11:36:17.190: E/AndroidRuntime(9731): at android.os.Handler.dispatchMessage(Handler.java:99)
이 내용이 오류 관련된 내용 같은데 어디서 잘못한걸지요? 도와주세요.
그리고 핸들메세지에 관한 내용을 잘몰라서 어떠한 역할을 하는 함수인지 궁금합니다.
자바가 처음이라 아직 익숙해지기 힘이드네요