2010-11-21 15 views
0

ボタンを押したときに新しいレイアウトにする必要があるボタンにヌルポインタがあります。私は、次のようにコードを設定しています:ヌルポインタボタンを呼び出すときのポインタ

((Button) findViewById(R.id.analyzee)).setOnClickListener(btnClick); 

内の条件文を使う方法です。

基本的な顔検出アプリケーションです。顔が検出された場合

if (facesFound < 1) { 
       mFlipper.setDisplayedChild(2); 
       mTheMessage = (TextView) findViewById(R.id.falsemessage); 
       mThePicture = (ImageView) findViewById(R.id.false_view); 
       mTheMessage.setText(R.string.noFaceOne); 
       mThePicture.setImageBitmap(bitmap565); 
       return; 

、私は顔にボックスを描画し、次の操作を行います:

mFlipper.setDisplayedChild(1); 
      mTheMessage.setText(R.string.noFaceFive); 
      mThePicture.setImageBitmap(bitmap565); 

私はこれを使用して、けれども私の問題はここにある顔が見つからない場合、私はこれを行いますボタンがクロックされたときに実行する方法:

private final View.OnClickListener btnClick = new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      switch (v.getId()) { 
      case R.id.scan_box: 
       openCamera(); 
       break; 

      case R.id.crop_face: 
       final ProgressDialog dialog = ProgressDialog.show(Main.this, "", 
         "Cropping photo", true); 
       dialog.show(); 

       Handler handler = new Handler(); 
       handler.postDelayed(new Runnable() { 
        @Override 
        public void run() { 
         dialog.dismiss(); 
        } 
       }, 3000); 

       cropFace(); 
       break; 

をので、私の問題は、この中にある:

フリッパーの私のレイアウトのいずれかで、レイアウト上にあるボタンは、顔が見つからない場合に新しい画像をスナップするオプションをユーザに与える必要がある。もう一方のレイアウトでは、ボタンをクリックすると、面が切り取られ、結果が別のレイアウトに送信されます。

コードところ、私は直面しています問題はされています

((Button) findViewById(R.id.crop_face)).setOnClickListener(btnClick); 

プログラムがボタンを解放するために配置する必要がクリックされた、それは私のswitch文でケースを呼び出し、実行します作物face_method。

イメージビューとテキストビューを設定するifステートメントに入れてみますが、その行にヌルポインターが表示されます。ボタンを宣言しています。

私のメインメニューにあるボタンは、onCreateメソッドと同じように正常に動作しますが、このボタンコマンドをどこで再生するのかわかりません。また、カメラコマンドを再開する必要があります。

ありがとうございます!

答えて

0

私は単純に間違ったボタンIDを使用していました...ごめんなさい= x

関連する問題