2012-04-03 43 views
1

我試圖使用onclick方法。我班有..onClick,查看未響應

Public class Homework extends Activity implements View.OnClickListner 

我有這樣的方法:

@Override 
Public void onClick(View v){ 
Log.I(TAG, "Click"); 
} 

但是,當我在視圖中單擊(其中有點擊=真)在XML它不上來與任何東西。

當按下視圖時,它意味着使用一個普通的點擊監聽器來記錄「點擊」它工作壽但我不想使用堆聽衆。

+0

發表您的XML太.. – ngesh 2012-04-03 07:47:21

+0

您需要運行'setOnClickListener(這)'的按鈕,你要在行動點擊。 – bos 2012-04-03 08:00:42

回答

0

Heve you onClickListener to the view?

你在你的代碼

View view = findViewById(R.id.your view id); 
view.setOnClickListener(this); 
0

在你的XML佈局,連接到您的按鈕來寫這個片段:

<Button ... 
android:onClick="doClick" <!-- name is arbitrary, but must match activity method name --> 
</Button> 

回到你的活動:

... 
public void doClick(View v){ 
    // actions for click response 
} 
0

嘗試這一個:我希望它會工作

Public class Homework extends Activity implements View.OnClickListner { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); // replace main with your layout 
     findViewById(R.id.view).setOnClickListener(this); // replace view with your id 

    } 

    } 
@Override 
Public void onClick(View v){ 
Log.I(TAG, "Click"); 
} 
0

您應該轉向使用我總是做如下簡單的方法:

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     button1.setOnClickListener(onClickListener); 
      button2.setOnClickListener(onClickListener); 
      button3.setOnClickListener(onClickListener); 
    } 

    private OnClickListener onClickListener = new OnClickListener() { 

     @Override 
     public void onClick(final View v) { 
       switch(v.getId()){ 
        case R.id.button1: 
          //DO something 
        break; 
        case R.id.button2: 
          //DO something 
        break; 
        case R.id.button3: 
          //DO something 
        break; 
       } 

     } 
    };