title: Android app crashes with button click
body: <p>I'm creating a simple quiz according to this tutorial, but the app crashes with the button "Next answer" which is related to a checked radio button.</p>
  
  <p>Main code:</p>
  
  <pre><code>import android.app.Activity;
  import android.content.Intent;
  import android.os.Bundle;
  import android.view.View;
  import android.widget.Button;
  import android.widget.RadioButton;
  import android.widget.RadioGroup;
  import android.widget.TextView;
  import android.widget.Toast;
  
  public class Display extends Activity {
      TextView tv;
      Button btnNext;
      RadioGroup rg;
      RadioButton rb1, rb2,rb3;
      String questions[]={"Capital of Portugal?", "Capital of Spain?", "Capital of France?"};
      String answers[]={"Lisbn","Madrid","Paris"};
      String options[]={"Zuriq", "London","Lisbon","Manchester","Buenos Aires","Madrid", "NY", "Paris","Moscow"};
  
      int flag=0;
  
      public static int marks,correct,wrong;
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.dispaly);
  
          tv=(TextView) findViewById(R.id.tvque);
          btnNext=(Button) findViewById(R.id.btnNext);
          rb1= (RadioButton) findViewById(R.id.radioButton);
          rb2= (RadioButton) findViewById(R.id.radioButton2);
          rb3= (RadioButton) findViewById(R.id.radioButton3);
  
          tv.setText(questions[flag]);
          rb1.setText(options[flag*3]);
          rb2.setText(options[(flag*3)+1]);
          rb3.setText(options[(flag*3)+2]);
  
          Toast.makeText(this, "Negative Marks: " + MainActivity.tbflag,   1000).show();
  
          btnNext.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View view) {
  
              //The error comes from the line bellow, i believe:
  
                  RadioButton user_answer=  (RadioButton)findViewById(rg.getCheckedRadioButtonId());
                  String answerText=user_answer.getText().toString();
  
                  if(answerText.equalsIgnoreCase(answers[flag])){
                      correct++;
                  }else{
                      wrong++;
                      flag++;
                      if(flag&lt;questions.length){
                          tv.setText(questions[flag]);
                          rb1.setText(options[flag*3]);
                          rb2.setText(options[(flag*3)+1]);
                          rb3.setText(options[(flag*3)+2]);
                      }
                      else
                      {
                          if(MainActivity.tbflag)
                          {
                              marks=correct-wrong;
                          }
                          else
                          {
                              marks=correct;
                          }
                          Intent in =new Intent(getApplicationContext(), ResultActivity.class);
                          startActivity(in);
                      }
                  }
              }
          });
      }
  }
  </code></pre>
  
  <p>Log message:</p>
  
  <blockquote>
    <p>java.lang.NullPointerException: Attempt to invoke virtual method 'int android.widget.RadioGroup.getCheckedRadioButtonId()' on a null object reference</p>
  </blockquote>
  
  <p>I don't understand this error, why isn't the method being called? Can someone help?</p>
  
  <p>XML:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:id="@+id/activity_main"
  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="com.example.vtorferreira.anew.MainActivity"&gt;
  
  &lt;TextView
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:id="@+id/tvque"
      tools:text="Questions" /&gt;
  &lt;RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:orientation="vertical"
      android:id="@+id/group"&gt;
      &lt;RadioButton
          android:text="RadioButton"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_below="@+id/textView"
          android:layout_alignParentLeft="true"
          android:layout_alignParentStart="true"
          android:layout_marginTop="32dp"
          android:id="@+id/radioButton" /&gt;
  
      &lt;RadioButton
          android:text="RadioButton"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_below="@+id/radioButton"
          android:layout_alignParentLeft="true"
          android:layout_alignParentStart="true"
          android:id="@+id/radioButton2" /&gt;
  
      &lt;RadioButton
          android:text="RadioButton"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:id="@+id/radioButton3"
          android:layout_below="@+id/radioButton2"
          android:layout_alignParentLeft="true"
          android:layout_alignParentStart="true" /&gt;
  
  &lt;/RadioGroup&gt;
  
  &lt;Button
      android:text="Next Question"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:layout_alignParentBottom="true"
      android:layout_alignParentLeft="true"
      android:layout_alignParentStart="true"
      android:layout_marginLeft="60dp"
      android:layout_marginStart="60dp"
      android:layout_marginBottom="125dp"
      android:id="@+id/btnNext" /&gt;
   &lt;/RelativeLayout&gt;
  </code></pre>