java Android“不幸的是,<app>已经停止。”
我想应用程序停止了setContentView(R.layout.main);
或TextState = (EditText) findViewById(R.id.TextState);
或更多,但我不知道需要做什么。对不起错误的帖子,但请帮助我
\res\layout-land\main.xml:
-需要一个水平接口
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:安卓="http://schemas.安卓.com/apk/res/安卓"
安卓:layout_width="match_parent"
安卓:layout_height="match_parent"
安卓:gravity="top"
安卓:orientation="vertical" >
<Button
安卓:id="@+id/Down"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_alignParentBottom="true"
安卓:layout_alignParentLeft="true"
安卓:layout_marginBottom="22dp"
安卓:layout_marginLeft="22dp"
安卓:text="Button" />
<Button
安卓:id="@+id/Up"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_above="@+id/Down"
安卓:layout_alignParentLeft="true"
安卓:layout_marginLeft="22dp"
安卓:text="Button" />
<Button
安卓:id="@+id/Left"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_alignBottom="@+id/Down"
安卓:layout_alignParentRight="true"
安卓:layout_marginBottom="16dp"
安卓:layout_marginRight="111dp"
安卓:text="Button" />
<Button
安卓:id="@+id/Right"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_alignBaseline="@+id/Left"
安卓:layout_alignBottom="@+id/Left"
安卓:layout_alignParentRight="true"
安卓:layout_marginRight="20dp"
安卓:text="Button" />
<TextView
安卓:id="@+id/TextState"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_above="@+id/Up"
安卓:layout_centerHorizontal="true"
安卓:text="Состояние"
安卓:textSize="32sp" />
</RelativeLayout>
主要活动:
public class MainActivity extends Activity implements OnClickListener {
EditText TextState;
Button Up;
Button Down;
Button Left;
Button Right;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextState = (EditText) findViewById(R.id.TextState);
Up = (Button) findViewById(R.id.Up);
Down = (Button) findViewById(R.id.Down);
Left = (Button) findViewById(R.id.Left);
Right = (Button) findViewById(R.id.Right);
Up.setOnClickListener(this);
Down.setOnClickListener(this);
Right.setOnClickListener(this);
Left.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.Up:
// TODO:
TextState.setText("Едем вперед");
break;
case R.id.Down:
// TODO:
TextState.setText("Едем назад");
break;
case R.id.Right:
// TODO:
TextState.setText("Едем направо");
break;
case R.id.Left:
// TODO:
TextState.setText("Едем налево");
break;
default:
break;
}
}}
catlog:
12-18 20:25:44.299: D/AndroidRuntime(647): Shutting down VM
12-18 20:25:44.299: W/dalvikvm(647): threadid=1: thread exiting with uncaught exception (group=0x40a13300)
12-18 20:25:44.319: E/AndroidRuntime(647): FATAL EXCEPTION: main
12-18 20:25:44.319: E/AndroidRuntime(647): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.app/com.example.app.MainActivity}: java.lang.NullPointerException
12-18 20:25:44.319: E/AndroidRuntime(647): at 安卓.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
12-18 20:25:44.319: E/AndroidRuntime(647): at 安卓.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
12-18 20:25:44.319: E/AndroidRuntime(647): at 安卓.app.ActivityThread.access$600(ActivityThread.java:130)
12-18 20:25:44.319: E/AndroidRuntime(647): at 安卓.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
12-18 20:25:44.319: E/AndroidRuntime(647): at 安卓.os.Handler.dispatchMessage(Handler.java:99)
12-18 20:25:44.319: E/AndroidRuntime(647): at 安卓.os.Looper.loop(Looper.java:137)
12-18 20:25:44.319: E/AndroidRuntime(647): at 安卓.app.ActivityThread.main(ActivityThread.java:4745)
12-18 20:25:44.319: E/AndroidRuntime(647): at java.lang.reflect.Method.invokeNative(Native Method)
12-18 20:25:44.319: E/AndroidRuntime(647): at java.lang.reflect.Method.invoke(Method.java:511)
12-18 20:25:44.319: E/AndroidRuntime(647): at com.安卓.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
12-18 20:25:44.319: E/AndroidRuntime(647): at com.安卓.internal.os.ZygoteInit.main(ZygoteInit.java:553)
12-18 20:25:44.319: E/AndroidRuntime(647): at dalvik.system.NativeStart.main(Native Method)
12-18 20:25:44.319: E/AndroidRuntime(647): Caused by: java.lang.NullPointerException
12-18 20:25:44.319: E/AndroidRuntime(647): at com.example.app.MainActivity.onCreate(MainActivity.java:32)
12-18 20:25:44.319: E/AndroidRuntime(647): at 安卓.app.Activity.performCreate(Activity.java:5008)
12-18 20:25:44.319: E/AndroidRuntime(647): at 安卓.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
12-18 20:25:44.319: E/AndroidRuntime(647): at 安卓.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)
12-18 20:25:44.319: E/AndroidRuntime(647): ... 11 more
12-18 20:26:10.839: I/Process(647): Sending signal. PID: 647 SIG: 9
12-18 20:26:16.799: E/Trace(662): error opening trace file: No such file or directory (2)
12-18 20:26:17.249: D/AndroidRuntime(662): Shutting down VM
12-18 20:26:17.249: W/dalvikvm(662): threadid=1: thread exiting with uncaught exception (group=0x40a13300)
12-18 20:26:17.260: E/AndroidRuntime(662): FATAL EXCEPTION: main
12-18 20:26:17.260: E/AndroidRuntime(662): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.app/com.example.app.MainActivity}: java.lang.NullPointerException
12-18 20:26:17.260: E/AndroidRuntime(662): at 安卓.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
12-18 20:26:17.260: E/AndroidRuntime(662): at 安卓.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
12-18 20:26:17.260: E/AndroidRuntime(662): at 安卓.app.ActivityThread.access$600(ActivityThread.java:130)
12-18 20:26:17.260: E/AndroidRuntime(662): at 安卓.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
12-18 20:26:17.260: E/AndroidRuntime(662): at 安卓.os.Handler.dispatchMessage(Handler.java:99)
12-18 20:26:17.260: E/AndroidRuntime(662): at 安卓.os.Looper.loop(Looper.java:137)
12-18 20:26:17.260: E/AndroidRuntime(662): at 安卓.app.ActivityThread.main(ActivityThread.java:4745)
12-18 20:26:17.260: E/AndroidRuntime(662): at java.lang.reflect.Method.invokeNative(Native Method)
12-18 20:26:17.260: E/AndroidRuntime(662): at java.lang.reflect.Method.invoke(Method.java:511)
12-18 20:26:17.260: E/AndroidRuntime(662): at com.安卓.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
12-18 20:26:17.260: E/AndroidRuntime(662): at com.安卓.internal.os.ZygoteInit.main(ZygoteInit.java:553)
12-18 20:26:17.260: E/AndroidRuntime(662): at dalvik.system.NativeStart.main(Native Method)
12-18 20:26:17.260: E/AndroidRuntime(662): Caused by: java.lang.NullPointerException
12-18 20:26:17.260: E/AndroidRuntime(662): at com.example.app.MainActivity.onCreate(MainActivity.java:32)
12-18 20:26:17.260: E/AndroidRuntime(662): at 安卓.app.Activity.performCreate(Activity.java:5008)
12-18 20:26:17.260: E/AndroidRuntime(662): at 安卓.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
12-18 20:26:17.260: E/AndroidRuntime(662): at 安卓.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)
12-18 20:26:17.260: E/AndroidRuntime(662): ... 11 more
12-18 20:26:49.719: I/Process(662): Sending signal. PID: 662 SIG: 9
# 1 楼答案
只要看一下你的日志,你就会在第32行得到一个NPE。可能findViewById没有找到您的视图,并且该字段为空
# 2 楼答案
我在这里发现了你的错误
EditText TextState;
TextState = (EditText)findViewById(R.id.TextState)
换成
TextView TextState;
TextState = (TextView)findViewById(R.id.TextState)
或者在XML文件中
# 3 楼答案
将文本视图更改为EditText。问题解决了
# 4 楼答案
你应该在第32行找到问题所在
com。实例应用程序。主要活动。onCreate(MainActivity.java:32)