[英]How to detect a release of the button after a long press?
想要發布按鈕,已實現onLongClick()
和onClick()
偵聽器,它們工作正常,但如何檢測Release 。 實際上想創建一個類似於WhatsApp的音頻錄制按鈕的按鈕,如果短按或觸摸沒有任何作用,則長時間按住開始錄制音頻並在釋放時停止錄制。
@Override
public void onClick(View v) {
shortClick();
}
});
btn.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
longClick();
return true;
}
});
public void shortClick()
{
Toast.makeText(this, "Short click Cancel !!!", Toast.LENGTH_SHORT).show();
}
public void longClick()
{
Toast.makeText(this, "Long click started - Recording started !!!", Toast.LENGTH_SHORT).show();
}
所以,需要一個釋放函數。
這是工作代碼
@Override
public boolean dispatchKeyEvent(KeyEvent KEvent)
{
int keyaction = KEvent.getAction();
if(keyaction == KeyEvent.ACTION_DOWN)
{
int keycode = KEvent.getKeyCode();
int keyunicode = KEvent.getUnicodeChar(KEvent.getMetaState() );
char character = (char) keyunicode;
System.out.println("DEBUG MESSAGE KEY=" + character + " KEYCODE=" + keycode);
}
return super.dispatchKeyEvent(KEvent);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.