Java Android Studio:在下一个活动中打开一个按钮
我正在尝试制作一个包含MainActivity页面并可以打开另一个活动的应用程序:Main2Activity 这是我在activity_main.xml页面上的按钮代码Java Android Studio:在下一个活动中打开一个按钮,java,android,button,android-activity,Java,Android,Button,Android Activity,我正在尝试制作一个包含MainActivity页面并可以打开另一个活动的应用程序:Main2Activity 这是我在activity_main.xml页面上的按钮代码 <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true"
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:onClick="goToMain2Activity"
android:text="Connect"
android:textSize="20sp"
我也在舱单上声明了
<activity android:label="@string/app_name"
android:name="NextActivity"/>
我无法在模拟器中打开应用程序,因此我不确定它是否正常工作。我的Activity类有一个错误,不允许打开它,但是我的代码正确吗?我不熟悉编码
编辑: 这是我的清单文件的副本。如果这不正确,我不确定如何声明第二个活动
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="fonephree.fonephree">
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".Main2Activity"
android:parentActivityName=".MainActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".MainActivity">
</meta-data>
</activity>
<activity android:name=".MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
android:icon=“@drawable/ic_启动器”
android:label=“@string/app_name”>
应用程序会打开,但当我单击按钮时,它会将我带到主屏幕,但没有图像 将xml代码中的这一行更改为 原因:在按钮中声明了错误的函数名
在MainActivity.java中,您的方法应该与您在onClick属性中创建的名称相匹配。所以它应该是这样的:
public void goToMain2Activity(View view){
Intent intent = new Intent (this, Main2Activity.class);
startActivity(intent);
}
对于xml文件中的android:onClick=“”,活动名称应与java文件中调用的方法名称相同。
更改android:onClick=“goToActivity2”此外,如果未声明,请在清单中声明main2活动。您是对的。我只是没有包括它,因为我假设OP故意遗漏了它:)我想我在清单中声明了它,但我不确定正确的代码是什么。有什么帮助吗?你能编辑你的问题并发布整个清单文件吗?如果你不能运行你的应用程序,你的清单看起来不错。我还看到你接受了我的答案,请随意投票!将
android:onClick=“gotomaina2activity”
更改为android:onClick=“goToActivity2”
。它应该和你在课堂上的名字相同。
public void goToMain2Activity(View view){
Intent intent = new Intent (this, Main2Activity.class);
startActivity(intent);
}