当我尝试在手机上运行应用程序时,当我尝试执行活动3时强制关闭。 Logcat说:
01-13 17:53:25.368:E / AndroidRuntime(3235):引起:java.lang.NullPointerException 01-13 17:53:25.368:E / AndroidRuntime(3235):在android.app.activity3.onCreate(activity3.java:18)
第18行是
Button wg = (Button) findViewById(R.id.Back);
以下是我对activity3.java的完整代码:
package android.app;
import android.app.R;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class activity3 extends Activity{
/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main3);
Button wg = (Button) findViewById(R.id.Back);
wg.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Intent intent = new Intent();
setResult(RESULT_OK, intent);
finish();
}
});
}
}
提前致谢
答案 0 :(得分:1)
我没有在xml中看到一个按钮。一旦你有了它,它需要:
android:id="@+id/Back"
答案 1 :(得分:1)
这种情况正在发生,因为您的视图中没有声明按钮。只有Textview。您必须在视图中创建按钮。你没有引用任何东西因此为空。
您可以找到一个很好的示例,了解如何制作按钮here。
答案 2 :(得分:1)
你发布的xml中没有id为“Back”的按钮,这就是你在那里获得null的原因。在xml中添加按钮条目。
答案 3 :(得分:1)
您需要修改xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<!-- your textview -->
<TextView
android:id="@+id/text1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/text1"
android:textAppearance="?android:attr/textAppearanceMedium"
/>
<!-- your back button -->
<Button
android:id="@+id/back"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/Back"
/>
</RelativeLayout>
我做了什么:
现在,您可以使用findViewById(R.id.back)引用您的按钮并设置您的点击监听器。