三種方法給Button添加點擊事件
(一)通過button的id,添加繼承View.OnClickListener的監聽實現
<Button android:id="@+id/btn_button2" android:text="按鈕2" android:layout_width="match_parent" android:layout_height="wrap_content" />
public class MainActivity extends AppCompatActivity implements View.OnClickListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.btn_button2).setOnClickListener(this); } @Override public void onClick(View v) { if(v.getId()==R.id.btn_button2) { Toast.makeText(getApplicationContext(),"Button 2 clicked",Toast.LENGTH_LONG).show(); } } }
(二)通過Text直接綁定點擊事件
<Button android:onClick="button1OnClick" android:layout_width="match_parent" android:text="按鈕1" android:layout_height="wrap_content" />
public class MainActivity extends AppCompatActivity implements View.OnClickListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void button1OnClick(View view) { Toast.makeText(getApplicationContext(),"Button 1 clicked",Toast.LENGTH_LONG).show(); } }
(二)在setOnClickListener中直接添加方法
<Button android:id="@+id/btn_button3" android:text="按鈕3" android:layout_width="match_parent" android:layout_height="wrap_content" />
public class MainActivity extends AppCompatActivity implements View.OnClickListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.btn_button3).setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v) { Toast.makeText(getApplicationContext(),"Button 3 clicked",Toast.LENGTH_LONG).show(); } }); } }