快速开发11之多次点击事件实现功能的万能代码
很多软件中有多次点击有彩蛋的功能,而我们不能自己写,两次点击还好,多次点击就有点复杂了,所以可以参考谷歌官方的代码 可以实现多次点击实现功能。
开始贴代码
1.点击次数设置
long[] mHits = new long[2];
private WindowManager.LayoutParams params;
/**
* 窗体管理者 */ private WindowManager wm; // 实例化窗体 wm = (WindowManager) getSystemService(WINDOW_SERVICE); 2.点击事件的发生 public void myToast(String address) { view = View.inflate(this, R.layout.address_show, null); TextView textview = (TextView) view.findViewById(R.id.tv_address); view.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //利用数组移位的原理进行判断 System.arraycopy(mHits, 1, mHits, 0, mHits.length - 1); mHits[mHits.length - 1] = SystemClock.uptimeMillis(); if (mHits[0] >= (SystemClock.uptimeMillis() - 500)) { // 双击居中了。。。 params.x = wm.getDefaultDisplay().getWidth()/2-view.getWidth()/2; wm.updateViewLayout(view, params); <span style="white-space:pre"> </span>Editor editor = sp.edit(); <span style="white-space:pre"> </span>editor.putInt("lastx", params.x); <span style="white-space:pre"> </span>editor.commit(); } } });