title: Inflated layout's buttons onClick listener not working
body: <p>All my other onClick methods work except the ones in which I have to inflate the layout to get the button! What am I doing wrong! Here is some code:</p>
  
  <pre><code>package com.games.think;
  
  import java.io.FileInputStream;
  import java.io.FileNotFoundException;
  import java.io.FileOutputStream;
  import java.io.IOException;
  
  import android.app.Activity;
  import android.content.Context;
  import android.os.Bundle;
  import android.view.LayoutInflater;
  import android.view.View;
  
  import android.widget.Button;
  import android.widget.RadioButton;
  import android.widget.TableLayout;
  
  public class Think extends Activity{
      //What question are we on?
      int question = 1;
      //What level are we on?
      String lvl ="1";
  
      //Radio buttons we need to access them global
      RadioButton lvl1;
      RadioButton lvl2;
      RadioButton lvl3;
      RadioButton lvl4;
      RadioButton lvl5;
  
       /** Called when the activity is first created. */
      public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.main);
          //play
          Button play = (Button)findViewById(R.id.play);
          play.setOnClickListener(new View.OnClickListener() {
              public void onClick(View v) {
                  playOnClick(v);
  
              }
          });
          //level
          Button level = (Button)findViewById(R.id.level);
          level.setOnClickListener(new View.OnClickListener() {
  
              @Override
              public void onClick(View v) {
                  levelOnClick(v);
  
              }
          });
  
          //setLevel
          LayoutInflater  inflater = LayoutInflater.from(this);
          TableLayout tbl = new TableLayout(this);
  
          View playv = inflater.inflate(R.layout.level, null);
          Button updateLevel = (Button) playv.findViewById(R.id.updateLevel);
          tbl.addView(updateLevel);
  
          updateLevel.setOnClickListener(new View.OnClickListener() {
                  @Override
                  public void onClick(View v) {
                      updateLevelOnClick(v);
                  }
              });
  
          View levelv = inflater.inflate(R.layout.play, null);
          Button gotomenu = (Button) levelv.findViewById(R.id.tomenu);
  
          gotomenu.setOnClickListener(new View.OnClickListener() {
                  @Override
                  public void onClick(View v) {
                      toMenuOnClick(v);
                  }
              });
  
  
  
  
  
         //Radio Buttons
          lvl1 = (RadioButton) levelv.findViewById(R.id.lvl1);
  
          lvl2 = (RadioButton) levelv.findViewById(R.id.lvl2);
  
          lvl3 = (RadioButton) levelv.findViewById(R.id.lvl3);
  
          lvl4 = (RadioButton) levelv.findViewById(R.id.lvl4);
  
          lvl5 = (RadioButton) levelv.findViewById(R.id.lvl5);
         //tomenu
  
  
          lvl = getLevel();
  
  
          if(lvl.equals("-1")) {
              lvl=getLevel();
  
          }
  
  
  
  
  
  
      }
  
  
  
  
      protected void toMenuOnClick(View v) {
          setContentView(R.layout.main);
  
      }
  
  
  
  
      protected void updateLevelOnClick(View v) {
  
          setContentView(R.layout.main);
  
  
      }
  
  
  
  
      protected void levelOnClick(View v) {
          setContentView(R.layout.level);
  
  
          if(lvl.equals("1")) {
              lvl1.setChecked(true);
          }
          if(lvl.equals("2")) {
              lvl2.setChecked(true);
          }
          if(lvl.equals("3")) {
              lvl3.setChecked(true);
          }
          if(lvl.equals("4")) {
              lvl4.setChecked(true);
          }
          if(lvl.equals("5")) {
              lvl5.setChecked(true);
          }
  
      }
  
  
  
  
      protected void playOnClick(View v) {
          setContentView(R.layout.play);
  
  
          setQuestion();
  
  
      }
  
  
  
  
  
  
      private String getLevel() {
  
          String FILENAME = "think_level";
          FileInputStream fis;
          byte[] buffer = new byte[1000];
  
  
          try {
              fis = openFileInput(FILENAME);
          } catch (FileNotFoundException e) {
              setLevel("1");
              return "-1";
          }
  
          try {
              fis.read(buffer,0,1000);
          } catch (IOException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
          }
          try {
              fis.close();
          } catch (IOException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
          }
          String level = buffer.toString();
  
          return level;
      }
  
      private void setLevel(String _level) {
          String FILENAME = "think_level";
          String level = _level;
  
          FileOutputStream fos;
          try {
              fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
              fos.write(level.getBytes());
              fos.close();
          } catch (Exception e) {
  
              e.printStackTrace();
  
          }
  
      }
  
      private void setQuestion() {
  
  
  
  
      }
  
  
  
      }
  </code></pre>
  
  <p>Here are my xml files:
  Main.xml:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  
      &lt;TableLayout android:id="@+id/tableLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android"&gt;
          &lt;ImageView android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/imageView1" android:src="@drawable/think" android:scaleType="fitCenter"&gt;&lt;/ImageView&gt;
          &lt;Button android:id="@+id/play" android:text="Play" android:layout_height="wrap_content" android:layout_width="wrap_content" &gt;&lt;/Button&gt;
          &lt;Button android:text="Level" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/level"&gt;&lt;/Button&gt;
  
  
      &lt;/TableLayout&gt;
  </code></pre>
  
  <p>Here is my level.xml</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
      &lt;TableLayout android:id="@+id/tableLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android"&gt;
          &lt;TableRow android:id="@+id/tableRow1" android:layout_width="wrap_content" android:layout_height="wrap_content"&gt;
              &lt;TextView android:text="Level:" android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content"&gt;&lt;/TextView&gt;
          &lt;/TableRow&gt;
          &lt;TableRow android:id="@+id/tableRow2" android:layout_width="wrap_content" android:layout_height="wrap_content"&gt;
              &lt;RadioGroup android:id="@+id/radioGroup1" android:layout_width="wrap_content" android:layout_height="wrap_content"&gt;
                  &lt;RadioButton android:id="@+id/lvl1" android:text="Level 1" android:layout_height="wrap_content" android:checked="true" android:layout_width="wrap_content"&gt;&lt;/RadioButton&gt;
                  &lt;RadioButton android:id="@+id/lvl2" android:text="Level 2" android:layout_height="wrap_content" android:layout_width="wrap_content"&gt;&lt;/RadioButton&gt;
                  &lt;RadioButton android:id="@+id/lvl3" android:text="Level 3" android:layout_height="wrap_content" android:layout_width="wrap_content"&gt;&lt;/RadioButton&gt;
                  &lt;RadioButton android:id="@+id/lvl4" android:text="Level 4" android:layout_height="wrap_content" android:layout_width="wrap_content"&gt;&lt;/RadioButton&gt;
                  &lt;RadioButton android:id="@+id/lvl5" android:text="Level 5" android:layout_height="wrap_content" android:layout_width="wrap_content"&gt;&lt;/RadioButton&gt;
              &lt;/RadioGroup&gt;
          &lt;/TableRow&gt;
          &lt;Button android:text="Set Level" android:id="@+id/updateLevel" android:layout_width="wrap_content" android:layout_height="wrap_content"&gt;&lt;/Button&gt;
      &lt;/TableLayout&gt;
  </code></pre>
  
  <p>Here is play.xml:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;TableLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"&gt;
      &lt;ScrollView android:id="@+id/scrollView1" android:layout_width="wrap_content" android:layout_height="wrap_content"&gt;
          &lt;TextView android:text="TextView" android:id="@+id/question" android:layout_height="wrap_content" android:layout_width="wrap_content"&gt;&lt;/TextView&gt;
      &lt;/ScrollView&gt;
      &lt;RadioGroup android:id="@+id/radioGroup1" android:layout_width="wrap_content" android:layout_height="wrap_content" &gt;
          &lt;RadioButton android:id="@+id/radioButton1" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="RadioButton"&gt;&lt;/RadioButton&gt;
          &lt;RadioButton android:id="@+id/radioButton2" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="RadioButton"&gt;&lt;/RadioButton&gt;
          &lt;RadioButton android:id="@+id/radioButton3" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="RadioButton"&gt;&lt;/RadioButton&gt;
      &lt;/RadioGroup&gt;
      &lt;Button android:id="@+id/go" android:text="Go" android:layout_height="wrap_content" android:layout_width="wrap_content"&gt;&lt;/Button&gt;
      &lt;Button android:id="@+id/tomenu" android:text="Back To Menu" android:layout_height="wrap_content" android:layout_width="wrap_content"&gt;&lt;/Button&gt;
  &lt;/TableLayout&gt;
  </code></pre>