Button android按钮在两个屏幕之间切换
我是android应用程序的初学者。我正在使用Android Studio制作一个购物车列表应用程序。首先,我现在正在每个屏幕上创建两个按钮,分别调用、编辑和保存。因此,如果我单击编辑按钮,它将进入屏幕2,如果我单击保存,它将进入屏幕1。但是,每当我尝试用午餐时,它都会出现如下错误:Button android按钮在两个屏幕之间切换,button,layout,android-activity,android-studio,Button,Layout,Android Activity,Android Studio,我是android应用程序的初学者。我正在使用Android Studio制作一个购物车列表应用程序。首先,我现在正在每个屏幕上创建两个按钮,分别调用、编辑和保存。因此,如果我单击编辑按钮,它将进入屏幕2,如果我单击保存,它将进入屏幕1。但是,每当我尝试用午餐时,它都会出现如下错误: 02-14 15:14:57.830 AndroidRuntime﹕ FATAL EXCEPTION: main Process: com.example.jieun.hw1, PID: 1782
02-14 15:14:57.830 AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.example.jieun.hw1, PID: 1782
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.jieun.hw1/com.example.jieun.hw1.MainActivityOne}: java.lang.NullPointerException
我的两个屏幕和布局代码如下:
02-14 15:14:57.830 AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.example.jieun.hw1, PID: 1782
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.jieun.hw1/com.example.jieun.hw1.MainActivityOne}: java.lang.NullPointerException
屏幕1:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list);
Button editButton = (Button) findViewById(R.id.e_button);
editButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
//Starting a new Intent
Intent editScreen = new Intent(..MainActivityTwo.class);
startActivity(editScreen);
}
});
}
屏幕2:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list);
Button saveButton = (Button) findViewById(R.id.s_button);
saveButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
//Starting a new Intent
Intent saveScreen;
saveScreen = new Intent(getApplicationContext(), MainActivityOne.class);
startActivity(saveScreen);
}
});
}
布局1:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivityOne">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Edit"
android:id="@+id/e_button"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" />
布局2:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivityOne">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Save"
android:id="@+id/s_button"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" />
</RelativeLayout>
您是否尝试过查看屏幕1的代码 在这里:
//Starting a new Intent
Intent editScreen = new Intent(..MainActivityTwo.class);
startActivity(editScreen);
}
MainActivityTwo之前有两个句点。classya它实际上不是句点,而是Intent editScreen=new IntentgetApplicationContext,MainActivityTwo.class@这就是你发布的代码所说的,在布局1中,你缺少RelativeLayout的结束标记。此外,在setContentView中,两个活动都引用了R.id.activity\u列表。它们不应该是被引用的两个不同的布局吗?