Button按钮的四种点击事件

Button按钮的四种点击事件,第1张

public classMainActivityextendsAppCompatActivityimplementsView.OnClickListener {

privateButtonmBtnClick1

privateButtonmBtnClick2

privateButtonmBtnClick3

privateButtonmBtnClick4

//Button的四种点击事件实现

@Override

protected voidonCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState)

setContentView(R.layout.activity_main)

mBtnClick1= (Button)findViewById(R.id.btn_click1)

mBtnClick2= (Button)findViewById(R.id.btn_click2)

mBtnClick3= (Button)findViewById(R.id.btn_click3)

mBtnClick4= (Button)findViewById(R.id.btn_click4)

//第一种

mBtnClick1.setOnClickListener(this)

//第二种

mBtnClick2.setOnClickListener(newView.OnClickListener() {

@Override

public voidonClick(View v) {

Toast.makeText(MainActivity.this,"第二种:你还点我?",Toast.LENGTH_SHORT).show()

}

})

//第三种

mBtnClick3.setOnClickListener(newMyClickListener())

//第四种

}

@Override

public voidonClick(View view){

Toast.makeText(this,"第一种:你点我?",Toast.LENGTH_SHORT).show()

}

//这种写法,一般不推荐,比较不专业。

public voidbtn4click(View view){

Toast.makeText(MainActivity.this,"第四种:你最后点我了,哈哈哈!!",Toast.LENGTH_SHORT).show()

}

private classMyClickListenerimplementsView.OnClickListener {

@Override

public voidonClick(View v) {

Toast.makeText(MainActivity.this,"第三种:你又点我?",Toast.LENGTH_SHORT).show()

}

}

}

https://github.com/FoxconnPeter/TopNews

因为Click事件的类型是EventHandler,

其定义是 public delegate void EventHandler (Object sender,EventArgs e)。

也就是说,参数类型是固定的,所以你不能自己随便改。

可以这样做,动态创建button时,给button的tag(或者其他属性)赋值,使用的时候判断下就好了。

创建:

Button button = new Button()

button.Tag = 1

button.Click = button_Click

使用:

private void button_Click(object sender,EventArgs e)

{

Button button = sender as Button

if(button == null) return

if(button.Tag==1)

{

// to do ...

}

if(button.Tag==2)

{

// to do ...

}

}

PHP是服务器端代码 ,html是客户端代码,实现button的onclick事件,就是客户端调用服务器端函数,因此就得向服务器提交请求。

有一种简单粗暴的方式,就是button是a标签时,可以直接在href里面写上要执行的php页面(或者通过给button绑定window.location通过JS跳转到PHP)。这种做法就得为每一个button设计一个PHP代码。

而我的做法是:事件+ajax 给button绑定点击事件,然后执行ajax。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11921562.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存