我可以以編程方式爲視圖啓動長按事件嗎?我知道有燒製click事件performClick()函數,但我正在尋找長按事件我可以以編程方式爲視圖啓動長按事件嗎?
1
A
回答
0
view.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
//do your stuff here
return true;
}
});
那你怎麼做android系統中長按。或者在您的父類中實現onLongClickListener
,然後添加未實現的方法
與您的看法。
view.setOnLongClickListener(this);
0
沒有內置函數,如performClick()
。所以你必須自己實現這個系統。
你可以聽onTouchListener
。然後在event.ACTION_DOWN
和event.ACTION_UP
的幫助下確定觸摸是否長按鍵並相應地執行操作。祝你好運!
2
view.performLongClick();它的存在對我來說...我
+1
請參閱:http://developer.android.com/reference/android/view/View.html#performLongClick%28%29 –
2
這一個工作:
view.performLongClick();
0
public static void longClickView(View v) {
final int viewWidth = v.getWidth();
final int viewHeight = v.getHeight();
final float x = viewWidth/2.0f;
final float y = viewHeight/2.0f;
long downTime = SystemClock.uptimeMillis();
long eventTime = SystemClock.uptimeMillis();
MotionEvent event = MotionEvent.obtain(downTime, eventTime,
MotionEvent.ACTION_DOWN, x, y, 0);
v.onTouchEvent(event);
eventTime = SystemClock.uptimeMillis();
final int touchSlop = ViewConfiguration.get(v.getContext()).getScaledTouchSlop();
event = MotionEvent.obtain(downTime, eventTime, MotionEvent.ACTION_MOVE,
x + touchSlop/2, y + touchSlop/2, 0);
v.onTouchEvent(event);
v.postDelayed(() -> {
long eventTime2 = SystemClock.uptimeMillis();
MotionEvent event2 = MotionEvent.obtain(downTime, eventTime2, MotionEvent.ACTION_UP, x, y, 0);
v.onTouchEvent(event2);
}, (long) (ViewConfiguration.getLongPressTimeout() * 1.5f));
}
相關問題
- 1. 我可以以編程方式啓動Windows Management Instrumentation服務嗎?
- 2. 如何以編程方式爲iPhone啓動/處理視圖?
- 3. 我可以以編程方式批量編輯iPhoto事件標題嗎?
- 4. 我可以以編程方式調用事件處理程序嗎?
- 5. 我可以以編程方式滾動WKInterfaceGroup嗎?
- 6. 我們可以以編程方式緩存谷歌地圖嗎?
- 7. 我可以以編程方式將matplotlib圖形插入Excel嗎?
- 8. 我可以通過我的應用程序以編程方式啓用GPS嗎?
- 9. 以編程方式拖動視圖
- 10. 以編程方式滾動視圖
- 11. 以編程方式滾動視圖
- 12. 我可以通過編程方式增加按鈕onclick-area嗎?
- 13. 如何以編程方式啓動onchange事件?
- 14. 如何禁用以編程方式長按主頁按鈕啓動谷歌?
- 15. 我可以爲四個方向分別啓動圖像嗎?
- 16. 以編程方式滾動到滾動視圖內的視圖
- 17. Android:以編程方式將按鈕添加到滾動視圖
- 18. 我可以啓用/禁用以編程方式打破例外嗎?
- 19. 我可以以編程方式在流水中觸發事實更新嗎?
- 20. 我可以以編程方式沉默Rake任務嗎?
- 21. 我可以在android上以編程方式播放廣播嗎?
- 22. 我們可以以編程方式配置Chrome嗎?
- 23. 我可以以編程方式發佈狀態評論嗎?
- 24. 我可以在UITextView中以編程方式選擇文本嗎?
- 25. 我可以以編程方式將FlowDocument保存到BAML嗎?
- 26. 我可以以編程方式創建UIContainerView嗎?
- 27. 我可以以編程方式添加iPad彈出窗口嗎?
- 28. 我可以以編程方式創建WKInterfaceButton嗎?
- 29. 我可以從C#以編程方式使用T4嗎?
- 30. 我可以以編程方式設置Mercurial配置選項嗎?
嘗試實施longClickListener界面在你的活動或片段,將是這樣的:'MyActivity延伸活動實現onLongClickListener'那麼你可以重寫需要View作爲參數的onLongClick方法,並且只是編程式地將你的View對象傳遞給該方法並調用它。 – user3455363
順便說一句你是否試圖執行內部長按的代碼?如果是,只需將其放入方法並致電 – user3455363