android自定义事件
‘壹’ Android 自定义toast能够支持点击事件吗
Toast可以自定义view,可以试试给自定义view点击事件,但是如果你想点击,不如使用SnakeBar
‘贰’ Android自定义preference布局文件中的控件怎么添加点击监听事件
没记错的话,是可以定义android:onclick属性的。在代码里添加相应的方法就行了,注意该监听方法必须是public的。
‘叁’ android 怎么自定义监听事件
新建一个android工程,找到工程下res->layout->activity_main.xml文件并打开
从左侧工具栏,拖入button到界面上,button默认id为button1
1、在Activity中给button绑定监听事件(setOnClickListener),代码如下:
//button绑定监听事件
Button btn = (Button)findViewById(R.id.button1);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder build = new Builder(MainActivity.this);
build.setMessage("Test").show();
}
});
2、直接在layout.xml中绑定onclick事件;
同时添加对应的监听事件处理函数
public void Test(View v){
AlertDialog.Builder build = new Builder(this);
build.setMessage("Test").show();
}
运行程序,在模拟器/真机中查看效果
点击button,弹出Test提示框,说明事件绑定成功。
‘肆’ 求android自定义控件怎么添加点击事件,长按事件
一般的控件只要是继承了View 都可以添加这两个事件,只需要重写View的setOnClicklistener和setOnLongClickListener这两个函数就可以了。
添加这两个函数,别人就能用set方法给你传进来listener,而你可以在onTouch方法里通过判断aciton_down action_move action_up 通过时间来判断是长按还是单击。
‘伍’ 请指教:Android中为什么我的自定义KeyEvent事件没有相应的执行呢,代码如下:
你这样构造的KeyEvent对象不能用,至少是没有DeviceID的。
你需要将KeyEvent必要的成员变量都赋上值。
另外,你要实现的是,不管点击哪个键,都结束Activity02。
所以你只需要在onKeyDown里执行finish();return true;即可。
‘陆’ android 自定义view滑动和点击事件冲突怎么解决
在Android中,对一个View同时调用OnTouch事件和OnClick事件时,导致事件冲突,比如onClick事件打算执行A动作,OnTouch事件打算执行B动作,但是在实际使用时会发现,当调用OnTouch时,有可能会同时执行A,B两个动作,这是因为OnClick事件本身就是在OnTouch事件中发生的;在onTouch事件中,如果返回true,就不会执行onClick,返回false,就同时执行onClick方法,要想把OnTouch和onClick事件完全的区分。可能过下列方法,解决该冲突问题:
就是在 OnTouch中的MotionEvent.ACTION_DOWN 时,记录下点(X1,Y1),
在 MotionEvent.ACTION_UP 时,记录下点(X2,Y2),然后比对 俩点之间的距离,如果小于一个较小数值(比如5),就认为是Click事件,onTouch中返回false,如果距离较大,可以当作onTouch事件去处理,返回true:
示范如下:
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
x1 = event.getX();
y1 = event.getY();
}
if (event.getAction() == MotionEvent.ACTION_UP) {
x2 = event.getX();
y2 = event.getY();
if (Math.abs(x1 - x2) < 6) {
return false;// 距离较小,当作click事件来处理
}
if(Math.abs(x1 - x2) >60){ // 真正的onTouch事件
}
}
return true;// 返回true,不执行click事件
}
‘柒’ android对话框里自定义的按钮怎样实现事件监听,求源代码参考
你好!
Button
button=(Button)
findViewById(R.id.button);
button.setOnclickListener(new
OnclickListener(){
public
void
onClick(view
v){
************************//这是你要button响应的事件
}
});
其中button是你定义的按钮名称,在xml文件中也有定义。
如果对你有帮助,望采纳。
‘捌’ android dialog自定义按钮如何设监听事件
利用回调方法,在调用处,进行Dialog中各按钮的事件处理。
view plain
package com.demo;
import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class LeaveMeetingDialog extends Dialog implements OnClickListener{
private Button quitBtn,stopBtn,cancelBtn;
private LeaveMeetingDialogListener listener;
public interface LeaveMeetingDialogListener{
public void onClick(View view);
}
public LeaveMeetingDialog(Context context,int theme,LeaveMeetingDialogListener listener) {
super(context,theme);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.leave_meeting_dialog);
initViews();
}
private void initViews(){
quitBtn = (Button)findViewById(R.id.quit_btn);
stopBtn = (Button)findViewById(R.id.stop_btn);
cancelBtn = (Button)findViewById(R.id.cancel_btn);
quitBtn.setOnClickListener(this);
stopBtn.setOnClickListener(this);
cancelBtn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
listener.onClick(v);
}
}
---调用处:
[java]
LeaveMeetingDialog dialog = new LeaveMeetingDialog(this,R.style.Theme_CustomDialog,
new LeaveMeetingDialogListener() {
@Override
public void onClick(View view) {
switch(view.getId()){
case R.id.quit_btn:break;
case R.id.stop_btn:break;
case R.id.cancel_btn:break;
}
}
});
dialog.show();
‘玖’ Android 自定义控件事件响应问题
代码发来,改好发给你. 看你这点描述看不出问题所在
[email protected]
‘拾’ 【Android】Notification通知栏使用RemoteViews自定义布局,怎么自定义点击事件
首先你的自定义布局的Notification是不是有一个RemoteView,那你就可以通过这个RemoteView来设置点击事件:
mRemoteViews.setOnClickPendingIntent(R.id.xxx, mPendingIntent);
其中你的R.id.xxx 就是你那个被点击的控件的id
mPendingIntent是一个PendingIntent,它可以这样定义:
mPendingIntent = PendingIntent.getActivity(context,0,intent,PendingIntent.FLAG_UPDATE_CURRENT);
注意到里面需要一个参数intent:
Intent intent = new Intent(xxx ,AaaActivity);
这样当点击时,就可以跳转到AaaActivity