布局
在OuterView1和InnerView2上,我想捕获这些触摸事件onSingleTapConfirmed()和onFling().OuterView1和InnerView2重叠的区域,我希望将控件传递给两个视图的触摸事件方法.
我试过这个:
集装箱类
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
outerView1.onTouchEvent(ev);
innerView2.onTouchEvent(ev);
return false;
}
Run Code Online (Sandbox Code Playgroud)
OuterView1类
@Override
public boolean onTouchEvent(MotionEvent event) {
gesture.onTouchEvent(event);
return true;
}
Run Code Online (Sandbox Code Playgroud)
gesture是GestureDetector.SimpleOnGestureListener的一个实例,带有onDown(),onFling()和onSingleTapConfirmed()方法的日志语句
InnerView2类
@Override
public boolean onTouchEvent(MotionEvent event) {
gesture.onTouchEvent(event);
return true;
}
Run Code Online (Sandbox Code Playgroud)
gesture是GestureDetector.SimpleOnGestureListener的一个实例,带有onDown(),onFling()和onSingleTapConfirmed()方法的日志语句
通过这种方法,我始终在两个视图的onDown()方法中进行回调.但我没有看到onSingleTapConfirmed()和onFling()方法的一致行为
当我点击红色圆圈(在屏幕截图中)三次,我有三种不同的行为
首先尝试(期望的行为)
10-14 09:03:14.155: I/OuterView1(27776): OuterView1.onDown()
10-14 09:03:14.155: I/InnerView2(27776): InnerView2.onDown()
10-14 09:03:14.155: W/GestureDetector(27776): [pen gesture] isConsideredDoubleTap - timeout
10-14 09:03:14.155: I/InnerView2(27776): InnerView2.onDown()
10-14 09:03:14.460: I/OuterView1(27776): OuterView1.onSingleTapConfirmed()
10-14 09:03:14.460: I/InnerView2(27776): InnerView2.onSingleTapConfirmed()
Run Code Online (Sandbox Code Playgroud)第二次尝试(只有一个视图获得onSingleTapConfirmed())
10-14 09:04:11.615: I/OuterView1(27776): …Run Code Online (Sandbox Code Playgroud)这是一个示例WebSocket应用,我正在尝试使其从Kubernetes ingress-nginx控制器运行。
Kubernetes yaml:
echo "
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: ws-example
spec:
replicas: 1
template:
metadata:
labels:
app: wseg
spec:
containers:
- name: websocketexample
image: nicksardo/websocketexample
imagePullPolicy: Always
ports:
- name: http
containerPort: 8080
env:
- name: podname
valueFrom:
fieldRef:
fieldPath: metadata.name
---
apiVersion: v1
kind: Service
metadata:
name: ws-example-svc
labels:
app: wseg
spec:
type: NodePort
ports:
- port: 80
targetPort: 8080
protocol: TCP
selector:
app: wseg
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ws-example-svc
annotations:
kubernetes.io/ingress.class: nginx …Run Code Online (Sandbox Code Playgroud)