簡體   English   中英

如何使用ViewPager android從鍵盤禁用或隱藏左右箭頭

[英]how to disable or hide the right and left arrow from keyboard with ViewPager android

我試圖禁用左側和右側的上keyboard使用此代碼,但viewPager在左,右的按button改變尋呼機的狀態。

edComment.setOnEditorActionListener(
    new EditText.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {

        if (actionId == EditorInfo.IME_FLAG_NAVIGATE_PREVIOUS
                || actionId == EditorInfo.IME_FLAG_NAVIGATE_NEXT
                || actionId == EditorInfo.IME_ACTION_PREVIOUS
                || actionId == EditorInfo.IME_ACTION_NEXT
                ) {


            return false;


        }
        // Return true if you have consumed the action, else false.
        return false;
    }
});

在此處輸入圖片說明

您可以擴展ViewPager並重寫arrowScroll方法,如下所示:

public class Wizard extends ViewPager {
    @Override
    public boolean arrowScroll(int direction) {
        // Never allow pressing keyboard arrows to switch between pages
        return false;
    }
}

鍵盤應用程序可以顯示所需的任何鍵。 沒有辦法強迫它不顯示某些按鈕,即使有另一個鍵盤也不會遵循相同的規則。

根據@Gabe Sechan的按鈕沒有隱藏或禁用,所以我這樣做

  @Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    Log.i("your tag", "Keycode: " + keyCode);
    switch (keyCode) {
        case KeyEvent.KEYCODE_DPAD_LEFT:
           Log.e("Click","left");

           /* for (int n = 0; n < count; n++) {

                setCurrentPage(arrayListView.get(n + 1));
            }*/


            pager.setCurrentItem(getItem(+1), true);
            return true;
        case KeyEvent.KEYCODE_DPAD_RIGHT:
            Log.e("Click","right");


            pager.setCurrentItem(getItem(-1), true);



            return true;
        case KeyEvent.KEYCODE_DPAD_UP:
            Log.e("Click","up");
            return true;
        case KeyEvent.KEYCODE_DPAD_DOWN:
            Log.e("Click","Down");
            return true;
        default:
            return super.onKeyUp(keyCode, event);
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM