2017-12-23 14 views
1

私は、AddThreeToTeamAボタンをクリックしたときにアプリケーションがクラッシュすると、アプリがクラッシュする理由を理解しようとしています。 XMLとJavaコードを追加しました。
私はチュートリアルに従っていますが、明らかにクラッシュすることはなく、いくつかの異なるソリューションを試しました。
ご了承ください。ボタンのonClickを追加するには?

package com.themovingmonkey.courtcounter; 

    import android.support.v7.app.AppCompatActivity; 
    import android.os.Bundle; 
    import android.widget.TextView; 

    public class MainActivity extends AppCompatActivity { 


     int score = 0; 
     int scoreTeamA; 

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

     } 
     public void addThreeForTeamA() { 
      scoreTeamA = score + 3; 
      displayForTeamA(scoreTeamA); 
     } 

     public void addTwoForTeamA() { 
      scoreTeamA = score + 2; 
      displayForTeamA(scoreTeamA); 
     } 

     public void addOneForTeamA() { 
      scoreTeamA = score + 1; 
      displayForTeamA(scoreTeamA); 
     } 
     public void displayForTeamA(int score) { 
      TextView scoreView = (TextView) findViewById(R.id.Team_A_Score); 
      scoreView.setText(String.valueOf(scoreTeamA)); 
     } 


    } 
     //////////////////////////////////////////////////////////////// 
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingLeft="16dp" 
    android:paddingRight="16dp" 
    android:orientation="vertical" 
    > 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center" 
     android:text= "Team A" 
     android:padding="4dp"/> 
    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center" 
     android:text="0" 
     android:padding="4dp" 
     android:id="@+id/Team_A_Score"/> 
    <Button 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="3 Points" 
     android:layout_margin="8dp" 
     android:onClick="addThreeForTeamA" 
     /> 
    <Button 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="2 Points" 
     android:layout_margin="8dp" 
     android:onClick="addTwoForTeamA" 
     /> 
    <Button 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="1 Point" 
     android:layout_margin="8dp" 
     android:onClick="addOneForTeamA" 
     /> 
</LinearLayout> 
+1

クラッシュのログを投稿する必要があります。 – Xenolion

答えて

0

android:onClick="someMethod"属性を使用して定義されたすべてのメソッド。その後、彼らは、パブリックでなければならないと、唯一のパラメータとしてViewを渡すためにあなたの方法を変更する必要があります。

public void someMethod(View view){ 

    //Everything else! 

} 

はあなたの方法は全く現在、唯一のパラメータとしてViewを渡しません!

+0

ありがとう!魅力的な仕事、幸せな休日! –

+0

ありがとう、**ハッピーコーディング!**。 – Xenolion

+0

ちょっと@GreyLarkanなぜあなたは私の答えの受け入れを削除しましたか?それは動作していないですか? – Xenolion

関連する問題