2011-09-24 3 views
0

내 자신의 키보드를 만들고 싶습니다. 내가 코드를 실행하면안드로이드 KeyboardView throw Nullpointer

내가 다음 코드

을 가지고, 그것은 NullPointerException가 발생합니다.


KeyboardView

package com.glenn.droid; // MY package 

import android.content.Context; 
import android.inputmethodservice.KeyboardView; 
import android.util.AttributeSet; 

public class RKeyboardView extends KeyboardView { 

    public RKeyboardView(Context context, AttributeSet attrs) { 
     super(context, attrs); 
     // TODO Auto-generated constructor stub 
    } 
} 

내 주요 활동

MobileActivity.java 

public class MobileActivity extends ListActivity { 

    private RKeyboardView r; 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     r = (RKeyboardView) findViewById(R.id.rKeyboardView1); 
     r.setKeyboard(new Keyboard(this,R.xml.qwerty)); 

     setContentView(R.layout.main); 
    } 
} 

어떻게해야합니까 확장 RKeyboardView? 도와주세요.

+0

null 포인터 예외는 무엇입니까? 그것은 단지 발생하지 않습니다, 일부 특정 개체가 잘못 null로 설정됩니다. – Jems

답변

1

super.onCreate(savedInstanceState); 

같이 findViewById() 메소드는 지정된 ID를 가진 하나의 활동에서 뷰 (뷰 계층)의 트리를 검색

setContentView(R.layout.main); 

직접 후 라인을 이동

하고, 해당 View 객체를 반환합니다. findViewById()를 호출하기 전에 setContentView를 호출하지 않은 경우 특정 View 객체가 생성되지도 않고 뷰 계층에 추가되지도 않았습니다.

+0

이봐, 정말 선생님이 .. 정말 고마워. 너는 내 문제를 해결했다. –