2010-12-29 8 views
0

シンプルなものがありますか? "kruis"の画像がImageButtonに表示されるので、main.xmlは良いですが、ImageButtonをクリックすると、Toastはなくなり、testViewは変更されません。数時間苦労していますこれで、私は何が間違っているのかわからない!誰かが私のOnClickListenerがうまくいかない理由を教えてくれますか? Android

package com.matchit; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.ImageButton; 
import android.widget.TextView; 
import android.widget.Toast; 

public class matchit extends Activity { 

OnClickListener cardListener; 
TextView testView; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    testView = (TextView)findViewById(R.id.test); 

    ImageButton b1 = (ImageButton)findViewById(R.id.card1); 

    b1.setImageResource(R.drawable.kruis); 
    b1.setOnClickListener(cardListener); 

    cardListener = new OnClickListener(){ 

     @Override 
     public void onClick(View v) { 

      testView.setText("its working"); 
      Toast.makeText(getApplicationContext(), 
        "its working", 
        Toast.LENGTH_LONG).show(); 
     } 
    }; 
} 

}

答えて

5

cardListenerの値は、この行でnullである:

b1.setOnClickListener(cardListener); 

はちょうどそれをやったcardListener = new OnClickListener(){

cardListener = new OnClickListener(){ 

    @Override 
    public void onClick(View v) { 

     testView.setText("its working"); 
     Toast.makeText(getApplicationContext(), 
       "its working", 
       Toast.LENGTH_LONG).show(); 
    } 
}; 

// moved down 
b1.setOnClickListener(cardListener); 
+0

後、この行を移動し、そんなにありがとう! :) – clayton33

+1

probsは、それが働いて聞いて幸せ。 – Aliostad

関連する問題