2015-06-30 2 views
-3

Пока я отлаживаю код, он не показывает ошибок ... но во время запуска приложения он показывает «К сожалению, приложение остановилось». Это моя страница «Активность 2» ... из этого страница при нажатии следующей кнопки она должна перейти в операцию 3 page.this моей активности 2 страницыЭмулятор показывает «К сожалению приложение остановилось»

     package com.example.admin.androidapp; 

     import android.app.Activity; 
     import android.content.Context; 
     import android.content.Intent; 
     import android.os.Bundle; 
     import android.widget.Button; 
     import android.view.View; 
     import android.view.View.OnClickListener; 
     import android.widget.Toast; 

     public class Activity2 extends Activity { 

      Button btn11; 
      Button btn22; 
      public Intent intent; 
      Button btn; 



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

       setContentView(R.layout.activity_activity2); 

       btn11 = (Button) findViewById(R.id.button2); 
       btn22 = (Button) findViewById(R.id.button5); 

       btn = (Button) findViewById(R.id.button2); 
       btn.setOnClickListener(new View.OnClickListener() { 
        @Override 
        public void onClick(View v) { 
         switch (v.getId()) { 
          case R.id.button2: 
           intent = new Intent(Activity2.this, Activity3.class); 
           startActivity(intent); 
           break; 

          case R.id.button5: 
           intent= new Intent(Activity2.this, Welcome.class); 
           startActivity(intent); 
           break; 


         } 
        } 

       }); 

      } 





     } 

=============================================================== 

here is my Activity3 page: 


    package com.example.admin.androidapp; 

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.widget.Button; 
import android.widget.RadioButton; 
import android.widget.RadioGroup; 

    public class Activity3 extends Activity{ 
    RadioGroup radiogroup; 
    Button btn1; 
    private Intent mIntent; 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_activity3); 

     radiogroup = (RadioGroup) findViewById(R.id.radiogroup); 
     btn1 = (Button) findViewById(R.id.button); 

     radiogroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { 



@Override 
     public void onCheckedChanged(RadioGroup radioGroup, int RadioID) { 
       RadioButton rd = (RadioButton) radioGroup.findViewById(RadioID); 


    switch (rd.getId()) { 
    case R.id.radioButton7: 
         mIntent = new Intent(Activity3.this, Terminate.class); 
         break; 
    case R.id.radioButton8: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
    case R.id.radioButton10: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
    case R.id.radioButton11: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
    case R.id.radioButton15: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
    case R.id.radioButton16: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
    case R.id.radioButton17: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
    case R.id.radioButton18: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
    case R.id.radioButton19: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
    case R.id.radioButton13: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
    case R.id.radioButton12: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
     case R.id.radioButton14: 
        mIntent = new Intent(Activity3.this, Activity4.class); 
        break; 
    } 
     } 
    } 

======================== ================== Пожалуйста, проверьте приведенный выше код и помогите мне в этом выпуске. Заранее спасибо. и им получать это сообщение в LogCat во время нажатия кнопки, как java.lang.NullPointerException: Попытка вызвать виртуальный метод

+2

Возможный дубликат [Что такое Исключение нулевого указателя и как его исправить?] (Http://stackoverflow.com/questions/218384/what-is-a-null-pointer-exception-and-how -do-i-fix-it) – Gosu

+0

'btn', где он определен в Activity2 ?? проверьте пожалуйста. –

+2

Сообщите свой логарифм. –

ответ

1

Вопрос в том, вы вызываете OnClick для БТН вне oncreate. Переместите следующий код внутри вашего onCreate. Также Вы должны initialise кнопку

Button btn = (Button) findViewById(R.id.btn); 
btn.setOnClickListener(new View.OnClickListener() { 
        @Override 
        public void onClick(View view) { 
         if (intent != null) { 
          startActivity(intent); 
         } else { 
          Toast.makeText(getApplicationContext(), "No choice made yet", Toast.LENGTH_SHORT).show(); 
         } 


        } 

       }); 

EDIT:

Попробуйте

btn.setOnClickListener(new View.OnClickListener() { 
         @Override 
         public void onClick(View view) { 
          Intent intent = new Intent(Activity2.this, Activity3.class); 
    startActivity(intent); 

         } 

        }); 

Вы не имеют инициализирует намерения так всегда нуль, так что входит в состояние другого. И вы добавляете Toast туда.

Toast.makeText(getApplicationContext(), "No choice made yet", Toast.LENGTH_SHORT).show(); 

Показаны.

+0

сделал это редактирование .... но .... когда я нажимаю дальше, он показывает «еще не сделанный выбор», и мои логарифмические дисплеи, такие как «Ошибка отправки ответа на отладчик: Broken pipe» – vinukariyad

+0

Проверить мои изменения .. – Amsheer

+0

сейчас мой первый проблема возникает, например, «к сожалению приложение остановилось», и моя кнопка назад работает. – vinukariyad

Смежные вопросы