Android多个点击事件监听简化编程方式:implements View.OnClickListener

一、implements View.OnClickListener是什么?

implements View.OnClickListener是实现界面上点击事件监听之意

二、implements View.OnClickListener有什么作用?

implements View.OnClickListener能够不用为每个界面上的点击控件都编写一个点击事件监听代码,简化了界面上点击控件的点击事件监听代码量。

二、implements View.OnClickListener咋么用?

1、不使用implements View.OnClickListener的情况 ,需要为界面上每个点击控件分别编写一个设置点击事件监听方法setOnClickListener(this)和点击方法onClick(View v)。

   public class MainActivity extends AppCompatActivity implements View.OnClickListener
{
    @Override
    protected void onCreate(Bundle savedInstanceState) 
 {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_main);
     Button create = (Button) findViewById(R.id.create);
     create.setOnClickListener(new View.OnClickListener()
{ @Override
public void onClick(View v) { Toast.makeText(this, "不使用implements View.OnClickListener的情况,需要为界面上每个点击控件分别编写一个设置点击事件监听方法setOnClickListener(this)和点击方法onClick(View v)。", Toast.LENGTH_SHORT).show(); } }); Button save= (Button) findViewById(R.id.save); save.setOnClickListener(new View.OnClickListener()
{ @Override
public void onClick(View v) { Toast.makeText(this, "不使用implements View.OnClickListener的情况,需要为界面上每个点击控件分别编写一个设置点击事件监听方法setOnClickListener(this)和点击方法onClick(View v)。", Toast.LENGTH_SHORT).show();
}
});
}
}

2、使用implements View.OnClickListener的情况 ,只编写一个设置点击事件监听方法setOnClickListener(this)和点击方法onClick(View v)即可。

   public class MainActivity extends AppCompatActivity implements View.OnClickListener
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button = (Button) findViewById(R.id.button); button.setOnClickListener(this); } @Override public void onClick(View v) {
switch (v.getId())
{
case R.id.button: Toast.makeText(this, "使用implements View.OnClickListener的情况 ,只编写一个设置点击事件监听方法setOnClickListener(this)和点击方法onClick(View v)即可。", Toast.LENGTH_SHORT).show(); break; default: Toast.makeText(this, "Nothing to show", Toast.LENGTH_SHORT).show(); break; } } }
原文地址:https://www.cnblogs.com/AChenWeiqiangA/p/13331083.html