2016-09-18 12 views
0

私はAndroid開発に全く慣れていません。私の教授は、いくつかの数字を取り、食事のコストを計算するアプリを作成するためのミニプロジェクトとして提供しています。これは私が今までに持っているものです:ava.lang.ClassCastException:android.support.v7.widget.AppCompatTextViewをandroid.widget.EditTextにキャストすることはできません

public class MainActivity extends AppCompatActivity { 

    /** 
    * ATTENTION: This was auto-generated to implement the App Indexing API. 
    * See https://g.co/AppIndexing/AndroidStudio for more information. 
    */ 
    private GoogleApiClient client; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     Button cButton = (Button) findViewById(R.id.calculateButton); 
     cButton.setOnClickListener(new View.OnClickListener() 
      { 
       public void onClick(View view) 
       { 
        //getting cost 
        EditText cost = (EditText)findViewById(R.id.mealCost); 
        String mealCost = cost.getText().toString(); 
        int mealCostInt = Integer.parseInt(mealCost); 

        //getting tax percentage 
        EditText tax = (EditText)findViewById(R.id.tax); 
        String taxAmount = cost.getText().toString(); 
        int taxAmountInt = Integer.parseInt(mealCost); 

        //getting tip percentage 
        EditText tip = (EditText)findViewById(R.id.tip); 
        String tipAmount = cost.getText().toString(); 
        int tipAmountInt = Integer.parseInt(mealCost); 

        //calculating total amount 
        int totalAmount = (mealCostInt)+((taxAmountInt/100)*mealCostInt)+((tipAmountInt/100)*mealCostInt); 

        //displaying total amount 
        EditText total = (EditText)findViewById(R.id.total); 
        total.setText(totalAmount); 
       } 
      } 

     ); 

    } 


} 

私はコードを実行するたびに、アプリケーションが正常に読み込まれます。しかし、いつでも私計算]ボタンをクリックして、私はエラーが下記見ます:

--------- beginning of crash 
09-18 20:25:40.169 2752-2752/com.example.shameemah.mealcalculator E/AndroidRuntime: FATAL EXCEPTION: main 
                        Process: com.example.shameemah.mealcalculator, PID: 2752 
                        java.lang.ClassCastException: android.support.v7.widget.AppCompatTextView cannot be cast to android.widget.EditText 
                         at com.example.shameemah.mealcalculator.MainActivity$1.onClick(MainActivity.java:35) 
                         at android.view.View.performClick(View.java:5198) 
                         at android.view.View$PerformClick.run(View.java:21147) 
                         at android.os.Handler.handleCallback(Handler.java:739) 
                         at android.os.Handler.dispatchMessage(Handler.java:95) 
                         at android.os.Looper.loop(Looper.java:148) 
                         at android.app.ActivityThread.main(ActivityThread.java:5417) 
                         at java.lang.reflect.Method.invoke(Native Method) 
                         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

私が同様のエラーで検索しましたし、私が見たいくつかのソリューションを試みたが、理由は私の限られた知識を、私はわからない、まさに私がすべきしている。私は本当にいくつかの詳細な説明といくつかの助けに感謝します。私は、物事を学び、理解するために懸命に努力していますので、アンドロイドデベロッパーとの経験がない人と話しているように答えてください。どうもありがとうございます!

答えて

1

私は、XMLレイアウトでのあなたの意見(mealCost、税金またはヒント)の1つはTextViewウィジェットだと思います。そのため、暗黙的に変換するとエラーが発生します。 xmlのEditTextでTextViewを変更すると、エラーが消えなければなりません。

+0

それを修正しました。ありがとうございました! –

+0

私はそれが助けてうれしいです。答えを正しいとマークしてください。 – Dmitriy

関連する問題