第一个小程序---计算器开发中遇到的问题总结

初学者在开发首个计算器小程序时遇到了EditText布局问题和中缀转后缀计算的挑战。通过使用Beanshell库解决了计算问题,涉及步骤包括下载bsh-2.0b4.jar,添加到classpath并导入到项目中。

作为一个小白,想写一个简单的计算器练练手,结果出现了各种问题,还差点导致eclipse崩溃......为了留个教训,特此记录下遇到的问题和解决办法。

首先碰到的便是布局中EditText问题。将代码展示如下:

<EditText 
        android:id="@+id/et"
        android:text="@string/bu_no_0" 
        android:textSize="35sp"
        android:textColor="#0000FF"
        android:lines="1" 
        android:layout_gravity="center" 
        android:gravity="bottom|right"
        android:cursorVisible="false" 
        android:editable="false"
        android:inputType="none" 
        android:scrollHorizontally="true" 
        android:layout_height="wrap_content" 
        android:layout_width="fill_parent" 
        />         
本身代码是没有问题的,问题出现在图形预览界面,报的错误信息已经是Exception raised during rendering: java.lang.System.arraycopy([CI[CII)V;后来查了下资料,才发现是因为android version的问题,因为android 4.4W不支持EditText,所以才无法预览。解决办法是打开小机器人的下拉列表,调整为其他的版本,就可以图形化预览了。

再者难点和重点就是怎么样将字符串计算机计算出来,搜了一些资料后,大致的思路是先将中缀表达式转化为后缀表达式,然后用栈来处理。(这个对于我来说太高深了,不会用也看不太懂)。后来找了一个“蠢”办法,就是用bsh。先附上下载链接:http://www.beanshell.org/download.html下载bsh-2.0b4.jar

下载成功后,要先将你的下载目录添加进classpath里面。然后再将该jar包导入到项目里面去。导入的方法很简单,将该包复制到项目文件的libs目录下,然后右键单击该包,选择build path ----->add to build path,就可以了。

最后就是怎么使用了,附上一段代码,相信都可以看懂用法。

Interpreter interpreter = new Interpreter();  
				   
				  try {  
					  interpreter.set("result", interpreter.eval("("+s+")"));					
					  
					     //打印输出结果						
					   et.setText(String.valueOf(interpreter.get("result")));
				  } catch (EvalError e) {  
				   e.printStackTrace();  
				  }  
虽然说程序很简单,但是也花了我好长时间,看来还是有很长的路要走啊。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值