我正在开发一个简单的项目,作为我的移动开发类的一部分。我的项目工作正常,但是,在为横向视图创建活动后,两个活动都停止了触发java代码。我从项目中删除了layout-land文件夹,但我的原始布局活动仍未触发java代码。
我怀疑是两者之间的联系被打破了,但是eclipse没有将其报告为错误。 setContentView()函数调用正确的xml和工具:context调用正确的java。我错过了什么?
这是onCreate:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_calculator);
// assign objects to java variables
teValue1 = (EditText)findViewById(R.id.teValue1);
teValue2 = (EditText)findViewById(R.id.teValue2);
tvResult = (TextView)findViewById(R.id.tvResult);
btPlus = (Button)findViewById(R.id.btPlus);
btMinus = (Button)findViewById(R.id.btMinus);
btMultiply = (Button)findViewById(R.id.btMultiply);
btDivide = (Button)findViewById(R.id.btDivide);
btAbout = (Button)findViewById(R.id.btAbout);
// Add on click listeners
btPlus.setOnClickListener(new Add());
btMinus.setOnClickListener(new Subtract());
btMultiply.setOnClickListener(new Multiply());
btDivide.setOnClickListener(new Divide());
}
其中一个点击监听器:
private class Add implements OnClickListener {
@Override
public void onClick(View view) {
if (!teValue1.getText().toString().matches("")
&& !teValue1.getText().toString().matches(".")
&& !teValue2.getText().toString().matches("")
&& !teValue2.getText().toString().matches(".")) {
double operand1 = Double.parseDouble(teValue1.getText()
.toString());
double operand2 = Double.parseDouble(teValue2.getText()
.toString());
Double result = operand1 + operand2;
tvResult.setText(result.toString());
}
}
}
布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="cs325.matheson.calculator.CalculatorActivity" >
// UI items are here...
<requestFocus />
</RelativeLayout>
答案 0 :(得分:0)
onClick方法中的if条件永远不会返回true。我修改了它们,现在它可以工作了。让我感到困惑的是他们为什么之前工作然后停止工作。