2015-07-13 4 views
-1

У меня есть время выхода Android Fatal Exception: main, и я не знаю, что мне нужно сделать, чтобы решить эту проблему. У меня есть следующий код, который вызывает это исключение:Android Runtime - Fatal Exception: main

package com.example.toggle_button; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.view.View; 
import android.widget.Button; 
import android.widget.Toast; 
import android.widget.ToggleButton; 

public class MainActivity extends Activity { 

    ToggleButton toggleButton1,toggleButton2; 
     Button Submit; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 



      toggleButton1=(ToggleButton)findViewById(R.id.toggleButton1); 
      toggleButton2=(ToggleButton)findViewById(R.id.toggleButton2); 
      Submit =(Button)findViewById(R.id.textView1); 

      Submit.setOnClickListener(new View.OnClickListener() { 

       @Override 
       public void onClick(View v) { 
        // TODO Auto-generated method stub 

         StringBuilder result = new StringBuilder(); 
         result.append("ToggleButton1 : ").append(toggleButton1.getText()); 
         result.append("\nToggleButton2 : ").append(toggleButton2.getText()); 
        //Displaying the message in toast 
        Toast.makeText(getApplicationContext(), result.toString(),Toast.LENGTH_LONG).show(); 
       } 
      }); 

     } 


    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 

} 

В этом коде после того, как работает мой андроид проект я получаю сообщение об ошибке на AVD, что toggle_button, к сожалению, остановились и также показывают роковое исключение в основном во время выполнения time.i утра не могу решить это. Пожалуйста, скажите мне подходящее решение для того же.

This is the LogCat of Exception: 


07-13 03:38:13.793: D/AndroidRuntime(1362): Shutting down VM 
07-13 03:38:13.793: W/dalvikvm(1362): threadid=1: thread exiting with uncaught exception (group=0x41465700) 
07-13 03:38:13.815: E/AndroidRuntime(1362):  FATAL EXCEPTION: main 
07-13 03:38:13.815: E/AndroidRuntime(1362):  java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.toggle_button/com.example.toggle_button.MainActivity}: java.lang.ClassCastException: android.widget.TextView cannot be cast to android.widget.Button 
07-13 03:38:13.815: E/AndroidRuntime(1362):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211) 
07-13 03:38:13.815: E/AndroidRuntime(1362):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261) 
07-13 03:38:13.815: E/AndroidRuntime(1362):  at android.app.ActivityThread.access$600(ActivityThread.java:141) 
07-13 03:38:13.815: E/AndroidRuntime(1362):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256) 
07-13 03:38:13.815: E/AndroidRuntime(1362):  at android.os.Handler.dispatchMessage(Handler.java:99) 
07-13 03:38:13.815: E/AndroidRuntime(1362):  at android.os.Looper.loop(Looper.java:137) 
07-13 03:38:13.815: E/AndroidRuntime(1362):  at android.app.ActivityThread.main(ActivityThread.java:5103) 
07-13 03:38:13.815: E/AndroidRuntime(1362):  at java.lang.reflect.Method.invokeNative(Native Method) 
07-13 03:38:13.815: E/AndroidRuntime(1362):  at java.lang.reflect.Method.invoke(Method.java:525) 
07-13 03:38:13.815: E/AndroidRuntime(1362):  at com.android.internal. 
os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737) 
+1

ответ дан. но попытка чтения в журналы поможет вам продвигаться вперед. java.lang.ClassCastException: android.widget.TextView не может быть добавлен в android.widget.Button – Ankit

+0

Пожалуйста, разместите свой xml-макет здесь – Alexander

ответ

4

Logcat ясно сказал

: ThreadId = 1: поток, выходящий с неперехваченным исключением (группа = 0x41465700) 07-13 03: 38: 13,815: Е/AndroidRuntime (тысяча триста шестьдесят два):
FATAL EXCEPTION: main 07-13 03: 38: 13.815: E/AndroidRuntime (1362):
java.lang.RuntimeException: не удалось запустить активность ComponentInfo {com.example.toggle_button/com.example.toggle_button.MainActivity}: java.lang.ClassCastException: android.widget.TextV МЭН не может быть брошено к android.widget.Button

Going Wrong здесь

Submit =(Button)findViewById(R.id.textView1); 

ли как

Submit =(Button)findViewById(R.id.buttonIdHere); 
+1

... Thumbs up !! –

+1

@DerGol ... lum Thnx, но у меня нет вашего «драгоценного» извинения !!!! , –

+1

Неважно, Мастер. –

0

Вы бросая TextView к кнопке:

ClassCastException: android.widget.TextView cannot be cast to android.widget.Button

Чтобы устранить эту проблему, вам необходимо либо изменить оттенок:

TextView Submit; 

Submit =(TextView)findViewById(R.id.textView1); 

или изменить тип интерфейса в файле layout.xml к Button

+0

Спасибо. Он работает сейчас. – shruti

0

проблема связана с незаконным typecasting:

java.lang.ClassCastException: android.widget.TextView не может быть отливать к android.widget.Button

Либо использовать это, если ваш View является Button:

Button Submit; 
Submit = (Button)findViewById(R.id.button1); 

или использовать это, если ваш View действительно TextView

TextView textSubmit; 
textSubmit = (TextView)findViewById(R.id.textView1); 

Это наследование:

  • java.lang.Object Главный класс
    • android.view.View
      • android.widget.TextView
        • android.widget.Button

Таким образом, Button распространяется на TextView.