public class KeyButton extends android.support.v7.widget.AppCompatButton { private EditText editText; public KeyButton(Context context) { super(context); this.setOnTouchListener(new OnTouchListener() { /** * @param v * @param event * @return */ @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()){ case MotionEvent.ACTION_UP: KeyButton.this.setTextColor(getResources().getColor(R.color.bg_keynum)); String btnValue=KeyButton.this.getText().toString(); if("清除".equals(btnValue)){ if (editText != null) { editText.setText(""); } }else if("退格".equals(btnValue)){ if (editText != null && !TextUtils.isEmpty(editText.getText())) { String editValue=editText.getText().toString(); editText.setText(editValue.substring(0,editValue.length()-1)); } }else{ if (editText != null) { editText.append(KeyButton.this.getText()); } } break; case MotionEvent.ACTION_DOWN: KeyButton.this.setTextColor(getResources().getColor(R.color.white)); break; case MotionEvent.ACTION_CANCEL: KeyButton.this.setTextColor(getResources().getColor(R.color.bg_keynum)); break; default: break; } return false; } }); } public KeyButton(Context context, AttributeSet attrs) { super(context, attrs); this.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()){ case MotionEvent.ACTION_UP: KeyButton.this.setTextColor(getResources().getColor(R.color.black43)); String btnValue=KeyButton.this.getText().toString(); if("清除".equals(btnValue)){ if (editText != null) { editText.setText(""); } }else if("退格".equals(btnValue)){ if (editText != null && !TextUtils.isEmpty(editText.getText())) { String editValue=editText.getText().toString(); editText.setText(editValue.substring(0,editValue.length()-1)); } }else{ if (editText != null) { editText.append(KeyButton.this.getText()); } } break; case MotionEvent.ACTION_DOWN: KeyButton.this.setTextColor(getResources().getColor(R.color.bg_keynum)); break; case MotionEvent.ACTION_CANCEL: KeyButton.this.setTextColor(getResources().getColor(R.color.bg_keynum)); break; default: break; } return false; } }); } public KeyButton(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); this.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()){ case MotionEvent.ACTION_UP: KeyButton.this.setTextColor(getResources().getColor(R.color.black43)); String btnValue=KeyButton.this.getText().toString(); if("清除".equals(btnValue)){ if (editText != null) { editText.setText(""); } }else if("退格".equals(btnValue)){ if (editText != null && !TextUtils.isEmpty(editText.getText())) { String editValue=editText.getText().toString(); editText.setText(editValue.substring(0,editValue.length()-1)); } }else{ if (editText != null) { editText.append(KeyButton.this.getText()); } } break; case MotionEvent.ACTION_DOWN: { KeyButton.this.setTextColor(getResources().getColor(R.color.black43)); } break; case MotionEvent.ACTION_CANCEL: KeyButton.this.setTextColor(getResources().getColor(R.color.bg_keynum)); break; default: break; } return false; } }); } /** 给输入按键绑定EditText * @param editText */ public void bindEditText(EditText editText) { this.editText = editText; } }
输入按键的button按键
最新推荐文章于 2023-03-09 22:33:23 发布