2017-05-09 201 views
-8

当我运行我的应用程序出错了 ,我得到这个错误:E/AndroidRuntime:致命异常:主要[DUPLI]

05-09 09:23:21.215 9003-9003/? I/art: Late-enabling -Xcheck:jni 05-09 09:23:21.544 9003-9003/com.example.aryan.lb_minisquad_re2 D/AndroidRuntime: Shutting down VM 05-09 09:23:21.545 9003-9003/com.example.aryan.lb_minisquad_re2 E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.aryan.lb_minisquad_re2, PID: 9003 java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.aryan.lb_minisquad_re2/com.example.aryan.lb_minisquad_re2.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.Window.findViewById(int)' on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2236) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) at android.app.ActivityThread.access$800(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5254) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.Window.findViewById(int)' on a null object reference at android.app.Activity.findViewById(Activity.java:2072) at com.example.aryan.lb_minisquad_re2.MainActivity.(MainActivity.java:19) at java.lang.reflect.Constructor.newInstance(Native Method) at java.lang.Class.newInstance(Class.java:1606) at android.app.Instrumentation.newActivity(Instrumentation.java:1066) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2226) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)  at android.app.ActivityThread.access$800(ActivityThread.java:151)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)  at android.os.Handler.dispatchMessage(Handler.java:102)  at android.os.Looper.loop(Looper.java:135)  at android.app.ActivityThread.main(ActivityThread.java:5254)  at java.lang.reflect.Method.invoke(Native Method)  at java.lang.reflect.Method.invoke(Method.java:372)  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)  05-09 09:23:24.923 9003-9003/com.example.aryan.lb_minisquad_re2 I/Process: Sending signal. PID: 9003 SIG: 9

这是我的MainActivity.java

@Override 
protected void onCreate(Bundle savedInstanceState) //TODO solve runtime problem(E/AndroidRuntime: FATAL EXCEPTION: main) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

} 
TextView tvnum = (TextView) findViewById(R.id.TV_num);//creating object of TextView 
public int id = 100;//id is first number of tv num 
Button btnMin = (Button) findViewById(R.id.btnMIN); //creating object of btnMin to avoid of exceptions 
    public void onbtnMinClicked()//calling onClick listener of btnMin 
    { 
     String num = tvnum.getText().toString();//num is value of tvnum 
     num = String.valueOf(--id);//setting num one less than self(what btnmin have to do 
     tvnum.setText(num);//setting num again to the tvnum 
    } 
} 
+2

那么,出了点问题。 – ThingyWotsit

+0

没有堆栈跟踪和代码就无法解决这个问题。所以除非你提供,正如ThingyWotsit所说,出现了一些问题 – Zoe

+0

'我得到这个错误'哪个错误? – greenapps

回答

1

您实例化必须在方法内部检查以下并在setContentView方法下

TextView tvnum =null; 
Button btnMin=null; 
@Override 
protected void onCreate(Bundle savedInstanceState) //TODO solve runtime problem(E/AndroidRuntime: FATAL EXCEPTION: main) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
tvnum = (TextView) findViewById(R.id.TV_num);//creating object of TextView 
int id = 100;//id is first number of tv num 
btnMin = (Button) findViewById(R.id.btnMIN); 
} 
+0

所以我不能让我的变量在onCreate方法中公开,并且我不能在onClick方法中使用它。 –

+0

检查我更新的答案,这是如何让他们公开的 所以你可以在课堂内任何你想要的地方使用它们 –