学习android记账程序发现看不懂代码啊,小女纸跪求求高手指点

lclc_cufe 2013-04-08 02:26:58
我下了一个记账程序要学习一下,发现看不懂代码啊,哪位高手给我瞧瞧,这个keyPad类是什么作用
代码如下:
public class KeyPad extends Activity implements OnClickListener {
private Button btnDisplay = null;
private Button btnOne = null;
private Button btnTwo = null;
private Button btnThree = null;
private Button btnFour = null;
private Button btnFive = null;
private Button btnSix = null;
private Button btnSeven = null;
private Button btnEight = null;
private Button btnNine = null;
private Button btnZero = null;
private Button btnDot = null;
private Button btnDelete = null;
private Button btnCancel = null;
private Button btnClean = null;
private Button btnDone = null;
private String value = "0";
private boolean isValueEmpty = false;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.widget_digit_keypad);
btnDisplay = (Button) findViewById(R.id.display);
btnOne = (Button) findViewById(R.id.one);
btnTwo = (Button) findViewById(R.id.two);
btnThree = (Button) findViewById(R.id.three);
btnFour = (Button) findViewById(R.id.four);
btnFive = (Button) findViewById(R.id.five);
btnSix = (Button) findViewById(R.id.six);
btnSeven = (Button) findViewById(R.id.seven);
btnEight = (Button) findViewById(R.id.eight);
btnNine = (Button) findViewById(R.id.nine);
btnZero = (Button) findViewById(R.id.zero);
btnDot = (Button) findViewById(R.id.dot);
btnDelete = (Button) findViewById(R.id.delete);
btnCancel = (Button) findViewById(R.id.cancel);
btnClean = (Button) findViewById(R.id.clean);
btnDone = (Button) findViewById(R.id.done);
btnDisplay.setOnClickListener(this);
btnOne.setOnClickListener(this);
btnTwo.setOnClickListener(this);
btnThree.setOnClickListener(this);
btnFour.setOnClickListener(this);
btnFive.setOnClickListener(this);
btnSix.setOnClickListener(this);
btnSeven.setOnClickListener(this);
btnEight.setOnClickListener(this);
btnNine.setOnClickListener(this);
btnZero.setOnClickListener(this);
btnDot.setOnClickListener(this);
btnDelete.setOnClickListener(this);
btnCancel.setOnClickListener(this);
btnClean.setOnClickListener(this);
btnDone.setOnClickListener(this);
if(this.getIntent().hasExtra("value"))
{
value=this.getIntent().getStringExtra("value");
}
if(value==null || value.equals(""))
{
value="0";
isValueEmpty = true;
}
btnDisplay.setText(value);

}

/*
* (non-Javadoc)
*
* @see android.view.View.OnClickListener#onClick(android.view.View)
*/
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.display:
break;
case R.id.delete:
if (value.length() > 1) {
value = value.substring(0, value.length() - 1);
} else {
value = "0";
}
break;
case R.id.cancel:
this.setResult(RESULT_CANCELED);
this.finish();
break;
case R.id.clean:
value = "0";
break;
case R.id.done:
/*
* Bundle bundle = new Bundle(); bundle.putString("value", value);
* SendSMSActivity.this.setResult(RESULT_CANCELED,
* SendSMSActivity.this.getIntent().putExtras(bundle
*/
this.setResult(RESULT_OK, this.getIntent().putExtra("value", value));
this.finish();
break;
default:
int i = 0;
if(!isValueEmpty){
value = "0";
isValueEmpty = true;
}
if (v.getId() == R.id.dot) {
if (value.indexOf(".") > -1) {
break;
}
i = 1;
} else {
if (value.equals("0")) {
value = "";
}
}
if(value.indexOf(".")>-1 || i==1){
if (value.length() < 9) {
value = value + ((Button) v).getText();
}
}else{
if (value.length() < 6) {
value = value + ((Button) v).getText();
}
}

break;
}
// DecimalFormat df2 = new DecimalFormat("#####,##0.##");
if(value.indexOf(".")>-1 && value.indexOf(".")<value.length()-3)
{
value=value.substring(0,value.indexOf(".")+3);
}
//value=df2.format(Double.parseDouble(value));
btnDisplay.setText(value);//₩

}
}
...全文
249 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wlcw16 2013-04-08
  • 打赏
  • 举报
回复
引用 5 楼 lclc_cufe 的回复:
引用 1 楼 wlcw16 的回复:一个activity类,控制了一大堆的button。还有一个传值value。 类似于一个计算器的界面,可以输入数字,删除,然后还有个done操作应该是给下面的activity传value把。 太感谢了
不客气哈
lclc_cufe 2013-04-08
  • 打赏
  • 举报
回复
引用 1 楼 wlcw16 的回复:
一个activity类,控制了一大堆的button。还有一个传值value。 类似于一个计算器的界面,可以输入数字,删除,然后还有个done操作应该是给下面的activity传value把。
太感谢了
lclc_cufe 2013-04-08
  • 打赏
  • 举报
回复
引用 1 楼 wlcw16 的回复:
一个activity类,控制了一大堆的button。还有一个传值value。 类似于一个计算器的界面,可以输入数字,删除,然后还有个done操作应该是给下面的activity传value把。
就是可以输入数字然后确定那种吗?buttonone-buttonnine是不是就是1-9?
java_hq 2013-04-08
  • 打赏
  • 举报
回复
引用 1 楼 wlcw16 的回复:
一个activity类,控制了一大堆的button。还有一个传值value。 类似于一个计算器的界面,可以输入数字,删除,然后还有个done操作应该是给下面的activity传value把。
+1
duguhu007 2013-04-08
  • 打赏
  • 举报
回复
就是一个继承OnClickListener 给按钮加点击事件的 大概看了下 就是给按钮的Text赋值
wlcw16 2013-04-08
  • 打赏
  • 举报
回复
一个activity类,控制了一大堆的button。还有一个传值value。 类似于一个计算器的界面,可以输入数字,删除,然后还有个done操作应该是给下面的activity传value把。

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧