2016-04-06 2 views
-1

Es gibt einen Fehler in meinem Code, den ich nicht verstehe. Wenn ein Kontrollkästchen aktiviert ist, wird die Anwendung geschlossen.Checklisten-Log-Fehler

Eine kurze Zusammenfassung dessen, was ich versuche zu tun. Wenn die Check-Taste gedrückt wird, versucht es zu sehen, welche Checklisten geprüft wurden, und fügt 1 hinzu, um zu punkten, wenn es aktiviert ist. Ich als Text je nach der erhaltenen Punktzahl auszugeben.

Wenn es irgendwelche anderen Fehler gibt, die ich gemacht habe, weisen Sie sie bitte darauf hin. Enthält auch ein Codebeispiel (erleichtert das Verständnis).

04-06 06:15:44.601 20298-20298/xyz.ashraf.whoisdelasalle E/AndroidRuntime: FATAL EXCEPTION: main 
                      Process: xyz.ashraf.whoisdelasalle, PID: 20298 
                      java.lang.IllegalStateException: Could not find method onCheckboxClicked(View) in a parent or ancestor Context for android:onClick attribute defined on view class android.widget.CheckBox with id 'concern' 
                       at android.view.View$DeclaredOnClickListener.resolveMethod(View.java:4485) 
                       at android.view.View$DeclaredOnClickListener.onClick(View.java:4449) 
                       at android.view.View.performClick(View.java:5204) 
                       at android.widget.CompoundButton.performClick(CompoundButton.java:122) 
                       at android.view.View$PerformClick.run(View.java:21153) 
                       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) 

Fehlercode ^^

package xyz.ashraf.whoisdelasalle; 

import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 
import android.widget.CheckBox; 
import android.widget.CompoundButton; 
import android.widget.TextView; 
import android.widget.CompoundButton.OnCheckedChangeListener; 

/** 
* Created by Ashraf on 3/2/2016. 
*/ 
public class check_Button extends Pop_sallian { 
    // Connects The variable to an xml id 


    TextView output = (TextView) findViewById(R.id.output); 

    //sets the variable to 0 
    int score = 0; 

    public void onCheckboxClicked(View v){ 
     boolean checked = ((CheckBox) v).isChecked(); 
     // checks what checklists have been checked 
     switch (v.getId()) { 
      case R.id.concern: 
       if (checked) { 
        score += 1; 
       } 
       break; 
      case R.id.faith: 
       if (checked) { 
        score += 1; 
       } 
       break; 
      case R.id.respect: 
       if (checked) { 
        score += 1; 
       } 
       break; 
      case R.id.education: 
       if (checked) { 
        score += 1; 
       } 
       break; 
      case R.id.community: 
       if (checked) { 
        score += 1; 
       } 
       break; 
     } 

     // adds the variables together to form a score 

     if (score == 0) { 
      output.setText("Come on! Get involved, your la sallian community needs you."); 
     } else if (score == 1) { 
      output.setText("Good start, keep going!"); 
     } else if (score == 2) { 
      output.setText("Room to improve but doing good!"); 
     } else if (score == 3) { 
      output.setText("Very good, others look up to you!"); 
     } else if (score == 4) { 
      output.setText("Wow, you really are an inspiration"); 
     } else if (score == 5) { 
      output.setText("Excellent! You're a leader in your la sallian community"); 
     } else { 
      output.setText("Unknown"); 
     } 
     // changes the output text based on score value 
    } 
} 

^^ Code, der die Checkliste überprüft und als Ausgänge Text ^^

package xyz.ashraf.whoisdelasalle; 

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.util.DisplayMetrics; 
import android.view.View; 
import android.widget.Button; 

/** 
* Created by Ashraf on 1/27/2016. 
*/ 
public class Pop_sallian extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.popwindow_sallian); 

     DisplayMetrics dm = new DisplayMetrics(); 
     getWindowManager().getDefaultDisplay().getMetrics(dm); 

     int width = dm.widthPixels; 
     int height = dm.heightPixels; 

     getWindow().setLayout((int)(width*.8),(int)(height*.6)); 
     //Creates a pop up window where the checklists are stored 

     Button checkButton = (Button) findViewById(R.id.check); 
     checkButton.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       startActivity(new Intent(Pop_sallian.this, check_Button.class)); 
      } 
     }); // runs the check_Button.java to check what checklists have been checked. 
     Button okButton = (Button) findViewById(R.id.okButton_sallian); 
     okButton.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       finish(); 
      } 
     });// closes the pop up window 
    } 
} 

^^-Code, der den Check-Button enthält (Um zu überprüfen, ob Die Checklisten werden überprüft und der Text wird ausgegeben. (abhängig)

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/ScrollView01" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
<RelativeLayout 
    android:layout_width="match_parent" android:layout_height="match_parent"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Are you a Sallian?" 
     android:id="@+id/textView7" 
     android:layout_alignParentTop="true" 
     android:layout_centerHorizontal="true" 
     android:textSize="30sp" 
     android:textColor="#000000" /> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Do you meet the following prerequisites, if you do you may be a Sallian" 
     android:id="@+id/textView8" 
     android:layout_below="@+id/textView7" 
     android:layout_centerHorizontal="true" 
     android:textSize="20sp" 
     android:textColor="#000000" /> 

    <CheckBox 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Are you concerened for the poor and Social Justice?" 
     android:id="@+id/concern" 
     android:textSize="18sp" 
     android:layout_below="@+id/textView8" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_marginTop="10dp" 
     android:onClick="onCheckboxClicked"/> 

    <CheckBox 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Do you have faith in the presence of God?" 
     android:id="@+id/faith" 
     android:textSize="15sp" 
     android:layout_below="@+id/concern" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_marginTop="3dp" 
     android:onClick="onCheckboxClicked"/> 

    <CheckBox 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Do you have Respect for all people?" 
     android:id="@+id/respect" 
     android:layout_below="@+id/faith" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_marginTop="3dp" 
     android:textSize="15sp" 
     android:onClick="onCheckboxClicked"/> 

    <CheckBox 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Do you value education?" 
     android:id="@+id/education" 
     android:textSize="15sp" 
     android:layout_below="@+id/respect" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_marginTop="3dp" 
     android:onClick="onCheckboxClicked"/> 

    <CheckBox 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Are you inclusive in your community?" 
     android:id="@+id/community" 
     android:layout_below="@+id/education" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:textSize="15sp" 
     android:checked="false" 
     android:onClick="onCheckboxClicked"/> 

    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Ok" 
     android:id="@+id/okButton_sallian" 
     android:layout_below="@+id/community" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentEnd="true" 
     android:layout_marginRight="20dp" 
     android:layout_marginTop="90dp" 
     android:layout_marginBottom="20dp" 
     android:background="#FAFAFA" 
     android:textColor="#00E676" 
     android:elevation="2dp" /> 

    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Check" 
     android:id="@+id/check" 
     android:textColor="#00E676" 
     android:elevation="2dp" 
     android:background="#FAFAFA" 
     android:layout_alignTop="@+id/okButton_sallian" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_marginLeft="20dp"/> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:id="@+id/output" 
     android:textColor="#1eff00" 
     android:textSize="20sp" 
     android:layout_below="@+id/community" 
     android:layout_centerHorizontal="true" 
     android:layout_above="@+id/check" 
     android:textIsSelectable="false" /> 
</RelativeLayout> 
    </ScrollView> 

^^ Pop-up-XML-Code ^^

+1

Sie haben nicht definiert() Methode überall in Ihrem Code onCheckboxClicked, deshalb Sie Ausnahme immer –

+0

ich tat: Linie 24 der check_Button Klasse –

+0

versuchen, diese Methode in derselben Klasse zu halten, anstatt verschiedene –

Antwort

-2

Sie sollten Ihr Launcher in Ihrem Manifest als check_Button anstelle der Standardeinstellung, die wahrscheinlich Pop_sallian ist, festlegen.

<activity 
    android:name=".check_Button" 
    <!--stuff --> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
</activity> 
+0

Pop einige Grundlagen von Android-Entwicklung empfiehlt lesen Sie ein Pop-up-Fenster ist, die aus der Haupttätigkeit gestartet wird. –

+0

Haben Sie den Code sorgfältig gelesen? check_button ist nicht einmal Aktivitätsklasse –

+0

check_Button eine Aktivität ... es von pop_sallian erstreckt, die eine Tätigkeit @VivekMishra –