我的简单计算器应用程序有问题:
当我有这样的方法时
public void WypiszWartoscPrzycisku(View sender)
它工作正常,一切正常,但是当我添加浮动时,我的意思是:
public void WypiszWartoscPrzycisku(View sender, float num1)
它崩溃了。我不知道我应该多给点什么,因为我什么也没做num1
,应用程序仍然崩溃。
XML(对不起,我的母语不是英语,所以我用我的语言命名了很多东西)
<LinearLayout 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:orientation="vertical"
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=".MainActivity" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<Button
android:id="@+id/button_AC"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/AC"
android:onClick="WypiszWartoscPrzycisku"/>
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:hint="@string/wynik"
android:inputType="number" >
<requestFocus />
</EditText>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/button_Siedem"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/siedem"
android:onClick="WypiszWartoscPrzycisku"/>
<Button
android:id="@+id/button_Osiem"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/osiem"
android:onClick="WypiszWartoscPrzycisku" />
<Button
android:id="@+id/button_Dziewiec"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/dziewiec"
android:onClick="WypiszWartoscPrzycisku" />
<Button
android:id="@+id/button_Plus"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/plus"
android:onClick="WypiszWartoscPrzycisku"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/button_Cztery"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/cztery"
android:onClick="WypiszWartoscPrzycisku"/>
<Button
android:id="@+id/button_Piec"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/piec"
android:onClick="WypiszWartoscPrzycisku"/>
<Button
android:id="@+id/button_Szesc"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/szesc"
android:onClick="WypiszWartoscPrzycisku" />
<Button
android:id="@+id/button_Minus"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/minus"
android:onClick="WypiszWartoscPrzycisku" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/button_Jeden"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/jeden"
android:onClick="WypiszWartoscPrzycisku"/>
<Button
android:id="@+id/button_Dwa"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/dwa"
android:onClick="WypiszWartoscPrzycisku"/>
<Button
android:id="@+id/button_Trzy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/trzy"
android:onClick="WypiszWartoscPrzycisku" />
<Button
android:id="@+id/button_Mnozenie"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/mnozenie"
android:onClick="WypiszWartoscPrzycisku" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/button_Zero"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/zero"
android:onClick="WypiszWartoscPrzycisku"/>
<Button
android:id="@+id/button_Kropka"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/kropka" />
<Button
android:id="@+id/buttonRownasie"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/rownasie"
android:onClick="WypiszWartoscPrzycisku"/>
<Button
android:id="@+id/button_dzielenie"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/dzielenie"
android:onClick="WypiszWartoscPrzycisku" />
</LinearLayout>
</LinearLayout>
编辑:
谢谢@beworker 和@Raghunandan 的回答。我得到它。我虽然添加参数 do 方法将解决我的主要问题。我的代码是(更改为英文名称) switch (bt.getId()){
case R.id.button_AC:
display.setText("");
break;
case R.id.button_Plus:
float num1 = Float.parseFloat(actualText.toString());
display.setText("");
break;
case R.id.buttonEquals:
float num2 = Float.parseFloat(actualText.toString());
float num3 = num1+num2;
String result = Float.toString(num3);
display.setText(wynik);
case R.id.Equals
它说,最后num1
没有声明。谢谢:)