直接上图:
图好大啊。看不下去了。刷屏~刷屏~刷刷~~
废话少说直接奔主题,这是一个自定义的键盘但是与大家常见到的键盘还是一样的。在完成的过程中遇到了一些问题,然后就记录下来希望下次遇到同样的问题可以避免做弯路。
就拿一个其中一个功能来收吧。计算器大家都应该相当熟悉。细心的朋友就发现其中有一个功能特别人性化。就是当第一数字为0时,不管输入1~9任何一个数组将会覆盖之前的0。打个比喻:输入2 ,结果显示是2.并不是02。刚刚在写的时候就出现了这个问题。后来经过我的苦想终于想明白了。太简单了。。卧槽。。。直接上代码。
@Override
public void numberClicked(int number) {
//点击数组时隐藏mStateTextView
mTopLayout.setVisibility(View.VISIBLE);
mStateTextView.setVisibility(View.INVISIBLE);
if (mInputString.length() >= 5)
return;
//当显示为0 时。输入任何字将会覆盖0
if (mInputString.indexOf('0') == 0) {
int index = 0;
int result = number + index;
mInputString = result + "";
mStorageTextView.setText(mInputString);
mStorage = mInputString;
} else {
mInputString += number;
mStorageTextView.setText(mInputString);
mStorage = mInputString;
}
}
这只是其中一部分代码,并没有全贴出。请谅解公司代码不能透露太多。等我有抽出时间整理出来写一个demo分享给大家 。。