Android 编程下 Touch 事件的分发和消费机制
Android 中与 Touch 事件相关的方法包括:dispatchTouchEvent(MotionEvent ev)、onInterceptTouchEvent(MotionEvent ev)、onTouchEvent(MotionEvent ev);能够响应这些方法的控件包括:ViewGroup 及其子类、Activity。方法与控件的对应关系如下表所示:
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间:2016年2月29日14:47:46
Android 中与 Touch 事件相关的方法包括:dispatchTouchEvent(MotionEvent ev)、onInterceptTouchEvent(MotionEvent ev)、onTouchEvent(MotionEvent ev);能够响应这些方法的控件包括:ViewGroup 及其子类、Activity。方法与控件的对应关系如下表所示:
一、onTouch
onTouch是View中OnTouchListener接口中的方法,处理View及其子类被touch是的事件处理。当然,前提是touch时间能够传递到指定的view。Q1:为什么会传递不到呢?
//ARS------------------------
g_VoiceARSMode = cfgFile.GetConfigValueStr("VoiceARSMode", "control");
g_VoiceARSPayloadtype = cfgFile.GetConfigValueInt("VoiceARSPayloadtype",
"124");
g_VoiceCodecBitrate = cfgFile.GetConfigValueInt("VoiceCodecBitrate",
"208000");
g_VoiceARSBitrateLo = cfgFile.GetConfigValueInt("VoiceARSBitrateLo", "32");
g_VoiceARSBitrateHi = cfgFile.GetConfigValueInt("VoiceARSBitrateHi", "64");
apply plugin: 'com.android.application'
android {
compileSdkVersion 'Google Apis:Google Apis:23'
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.lc.lcmetting"
minSdkVersion 19
targetSdkVersion 23
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
dexOptions {
incremental true
}
详细中英对照:
#include "stdafx.h"
#include <Windows.h>
#include <stdio.h>
#include <tchar.h>
#if _MSC_VER >=1400 // VC2005才支持intrin.h
#include <intrin.h> // 所有Intrinsics函数
#endif