我正在尝试创建一个包含MainActivity页面的应用,并可以打开另一个活动:Main2Activity。
以下是activity_main.xml页面上按钮的代码
<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"
以下是转到MainActivity.java页面中新活动的方法:
public void goToActivity2(View view) {
Intent intent = new Intent(this, Main2Activity.class);
startActivity(intent);
}
我也在清单
中声明了它<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>
应用程序打开但是当我点击按钮时它会将我带到主屏幕但没有图像。
答案 0 :(得分:0)
将xml代码android:onClick="goToMain2Activity"
中的这一行更改为android:onClick="goToActivity2"
原因:在Button中声明了一个错误的函数名称。
答案 1 :(得分:0)
在MainActivity.java中,您的方法应该与您在onClick属性中创建的名称相匹配。所以它应该是这样的:
public void goToMain2Activity(View view){
Intent intent = new Intent (this, Main2Activity.class);
startActivity(intent);
}
答案 2 :(得分:0)
对于xml文件中的android:onClick =“”,活动名称应与ur java文件中调用的方法名称相同。 更改android:onClick =“goToActivity2”