android.view.KeyEvent#KEYCODE_PLUS源码实例Demo

下面列出了android.view.KeyEvent#KEYCODE_PLUS 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: android_9.0.0_r45   文件: AbsSeekBar.java

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (isEnabled()) {
        int increment = mKeyProgressIncrement;
        switch (keyCode) {
            case KeyEvent.KEYCODE_DPAD_LEFT:
            case KeyEvent.KEYCODE_MINUS:
                increment = -increment;
                // fallthrough
            case KeyEvent.KEYCODE_DPAD_RIGHT:
            case KeyEvent.KEYCODE_PLUS:
            case KeyEvent.KEYCODE_EQUALS:
                increment = isLayoutRtl() ? -increment : increment;

                if (setProgressInternal(getProgress() + increment, true, true)) {
                    onKeyChange();
                    return true;
                }
                break;
        }
    }

    return super.onKeyDown(keyCode, event);
}
 
源代码2 项目: FireFiles   文件: LineColorPicker.java

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
	int increment = selectedColorIndex;
	switch (keyCode) {
		case KeyEvent.KEYCODE_DPAD_LEFT:
		case KeyEvent.KEYCODE_MINUS:
			increment = Utils.isRTL() ? increment + 1 : increment -1;
			if(increment < 0){
				return false;
			}
			setSelectedColorPosition(increment);
			return true;

		case KeyEvent.KEYCODE_DPAD_RIGHT:
		case KeyEvent.KEYCODE_PLUS:
			increment =  Utils.isRTL() ? increment - 1  : increment + 1;
			if(increment >= colors.length){
				return false;
			}
			setSelectedColorPosition(increment);
			return true;
	}
	return super.onKeyDown(keyCode, event);
}
 
源代码3 项目: FireFiles   文件: LineColorPicker.java

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
	int increment = selectedColorIndex;
	switch (keyCode) {
		case KeyEvent.KEYCODE_DPAD_LEFT:
		case KeyEvent.KEYCODE_MINUS:
			increment = Utils.isRTL() ? increment + 1 : increment -1;
			if(increment < 0){
				return false;
			}
			setSelectedColorPosition(increment);
			return true;

		case KeyEvent.KEYCODE_DPAD_RIGHT:
		case KeyEvent.KEYCODE_PLUS:
			increment =  Utils.isRTL() ? increment - 1  : increment + 1;
			if(increment >= colors.length){
				return false;
			}
			setSelectedColorPosition(increment);
			return true;
	}
	return super.onKeyDown(keyCode, event);
}
 
源代码4 项目: FireFiles   文件: LineColorPicker.java

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
	int increment = selectedColorIndex;
	switch (keyCode) {
		case KeyEvent.KEYCODE_DPAD_LEFT:
		case KeyEvent.KEYCODE_MINUS:
			increment = Utils.isRTL() ? increment + 1 : increment -1;
			if(increment < 0){
				return false;
			}
			setSelectedColorPosition(increment);
			return true;

		case KeyEvent.KEYCODE_DPAD_RIGHT:
		case KeyEvent.KEYCODE_PLUS:
			increment =  Utils.isRTL() ? increment - 1  : increment + 1;
			if(increment >= colors.length){
				return false;
			}
			setSelectedColorPosition(increment);
			return true;
	}
	return super.onKeyDown(keyCode, event);
}
 
源代码5 项目: RangeSeekBar   文件: RangeSeekBar.java

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (isEnabled()) {
        int increment = mKeyProgressIncrement;
        switch (keyCode) {
            case KeyEvent.KEYCODE_DPAD_LEFT:
            case KeyEvent.KEYCODE_MINUS:
                increment = -increment;
                // fallthrough
            case KeyEvent.KEYCODE_DPAD_RIGHT:
            case KeyEvent.KEYCODE_PLUS:
            case KeyEvent.KEYCODE_EQUALS:
                if (setProgressInternal(getProgressStart() - increment, getProgressEnd() + increment, true, true)) {
                    onKeyChange();
                    return true;
                }
                break;
        }
    }

    return super.onKeyDown(keyCode, event);
}
 

private Float calculateIncrementForKey(int keyCode) {
  // If this is a long press, increase the increment so it will only take around 20 steps.
  // Otherwise choose the smallest valid increment.
  float increment = isLongPress ? calculateStepIncrement(20) : calculateStepIncrement();
  switch (keyCode) {
    case KeyEvent.KEYCODE_DPAD_LEFT:
      return isRtl() ? increment : -increment;
    case KeyEvent.KEYCODE_DPAD_RIGHT:
      return isRtl() ? -increment : increment;
    case KeyEvent.KEYCODE_MINUS:
      return -increment;
    case KeyEvent.KEYCODE_EQUALS:
      // Numpad Plus == Shift + Equals, at least in AVD, so fall through.
    case KeyEvent.KEYCODE_PLUS:
      return increment;
    default:
      return null;
  }
}
 

private Boolean onKeyDownNoActiveThumb(int keyCode, @NonNull KeyEvent event) {
  switch (keyCode) {
    case KeyEvent.KEYCODE_TAB:
      if (event.hasNoModifiers()) {
        return moveFocus(1);
      }

      if (event.isShiftPressed()) {
        return moveFocus(-1);
      }
      return false;
    case KeyEvent.KEYCODE_DPAD_LEFT:
      moveFocusInAbsoluteDirection(-1);
      return true;
    case KeyEvent.KEYCODE_MINUS:
      moveFocus(-1);
      return true;
    case KeyEvent.KEYCODE_DPAD_RIGHT:
      moveFocusInAbsoluteDirection(1);
      return true;
    case KeyEvent.KEYCODE_EQUALS:
      // Numpad Plus == Shift + Equals, at least in AVD, so fall through.
    case KeyEvent.KEYCODE_PLUS:
      moveFocus(1);
      return true;
    case KeyEvent.KEYCODE_DPAD_CENTER:
    case KeyEvent.KEYCODE_ENTER:
      activeThumbIdx = focusedThumbIdx;
      postInvalidate();
      return true;
    default:
      // Nothing to do in this case.
  }

  return null;
}
 

@Test
public void testMoveThumbFocus_plusMinus_correctThumbHasFocus() {
  slider.requestFocus();

  KeyEventBuilder plus = new KeyEventBuilder(KeyEvent.KEYCODE_PLUS);
  KeyEventBuilder minus = new KeyEventBuilder(KeyEvent.KEYCODE_MINUS);

  sendKeyEventThereAndBack(plus, minus);
}
 
 方法所在类
 同类方法