[英]Implement View.OnTouchListener on custom control
我創建了一個擴展RelativeLayout的視圖,然后,這個視圖能夠處理觸摸事件。 因此,我想到的是在自定義控件中實現OnTouchListener,如下所示:
class MyCustomControl extends RelativeLayout implements View.OnTouchListener {
public MyCustomControl (Context context) {
super(context);
}
public MyCustomControl (Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyCustomControl (Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
other_methods;
@Override
public boolean onTouch(View view, MotionEvent event) {
//event handle here.
}
}
它不起作用,但是如果我做這樣的事情,它會起作用:
MyCustomControl control = (MyCustomControl) LayoutInflater.from(context).inflate(R.layout.my_control, null);
control.setOnTouchListener(control);
為了在自定義控件中內置(已定義並激活)touchListener,該怎么辦?
我知道,已經晚了,但是我通過添加來解決了我的問題
this.setOnTouchListener(this);
到構造函數
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.