当前位置:操作系统 > 安卓/Android >>

android处理双击事件

需求:一些透明的button 用来处理软件环境的改变

xml:

Java代码 
<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout android:layout_width="fill_parent" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_height="fill_parent"  android:background="@drawable/splashview" 
    > 
    <Button  
        android:background="@android:color/transparent"  
        android:layout_height="30dip" 
        android:layout_width="50dip" 
        android:id="@+id/leftUp" 
        android:layout_alignParentTop="true" 
        android:layout_alignParentLeft="true" 
        android:layout_margin="0px" 
        android:padding="0px" 
        /> 
    <Button  
        android:background="@android:color/transparent"  
        android:layout_height="30dip" 
        android:layout_width="50dip" 
        android:id="@+id/rightUp" 
        android:layout_alignParentTop="true" 
        android:layout_alignParentRight="true" 
        android:layout_margin="0px" 
        android:padding="0px" 
        /> 
    <Button  
        android:background="@android:color/transparent"  
        android:layout_height="30dip" 
        android:layout_width="50dip" 
        android:id="@+id/leftDown" 
        android:layout_alignParentBottom="true" 
        android:layout_alignParentLeft="true" 
        android:layout_margin="0px" 
        android:padding="0px" 
        /> 
    <Button  
        android:background="@android:color/transparent"  
        android:layout_height="30dip" 
        android:layout_width="50dip" 
        android:id="@+id/rightDown" 
        android:layout_alignParentBottom="true" 
        android:layout_alignParentRight="true" 
        android:layout_margin="0px" 
        android:padding="0px" 
        /> 
</RelativeLayout> 

 

activity:

 

Java代码 
import android.content.Context; 
import android.view.MotionEvent; 
import android.view.View; 
import android.view.View.OnTouchListener; 
import android.widget.Button; 
import android.widget.Toast; 
 
public class AboutActivity extends Activity { 
 
    private Button leftUp; 
    private Button rightUp; 
    private Button leftDown; 
    private Button rightDown; 
    private ButtonOnTouchListener listener = new ButtonOnTouchListener(); 
    private Context mContext; 
    //计算点击的次数 
    private int count; 
    //第一次点击的时间 long型 
    private long firstClick; 
    //最后一次点击的时间 
    private long lastClick; 
    //第一次点击的button的id 
    private int firstId; 
    //调试环境是否开启 
    private boolean isDebugOpen = false; 
    //日志环境是否开启 
    private boolean isLogOpen = false; 
     
     
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
         
        setContentView(R.layout.about); 
         
        mContext = this; 
        leftUp = (Button)findViewById(R.id.leftUp); 
        rightUp = (Button)findViewById(R.id.rightUp); 
        leftDown = (Button)findViewById(R.id.leftDown); 
        rightDown = (Button)findViewById(R.id.rightDown); 
         
        leftUp.setOnTouchListener(listener); 
        rightUp.setOnTouchListener(listener); 
        leftDown.setOnTouchListener(listener); 
        rightDown.setOnTouchListener(listener); 
         
    } 
     
    private class ButtonOnTouchListener implements OnTouchListener{ 
 
        @Override 
        public boolean onTouch(View v, MotionEvent event) { 
            if(event.getAction()==MotionEvent.ACTION_DOWN){ 
                //如果第二次点击 距离第一次点击时间过长   那么将第二次点击看为第一次点击 
                if(firstClick!=0 && firstId!=0 && System.currentTimeM

补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,