问题描述
当我尝试通过 Imagebutton 加载另一个 Activity 时,我的应用崩溃了。
我的第一个活动
package com.mycompany.myapp;
import android.app.*;
import android.os.*;
import android.widget.*;
import android.view.*;
import android.content.Intent;
import android.view.View.*;
public class MainActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
public void profile(View view)
{
Intent gender_intent = new Intent(this,genderselection.class);
startActivity(gender_intent);
}
}
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:background = "@drawable/original"
>
<ImageButton
android:gravity = "center_vertical"
android:layout_marginTop = "-345dp"
android:id = "@+id/m_b"
android:layout_width ="200dp"
android:layout_height = "200dp"
android:background= "@drawable/profile"
android:onClick = "Profile"
/>
<TextView
android:layout_width ="200dp"
android:layout_height = "50dp"
android:text = "ENTER NAME"
android:gravity = "center"
android:layout_below = "@id/m_b"
android:textSize = "27dp"
android:textColor = "#000000"
android:textStyle = "bold"
android:id = "@+id/textname"
/>
<EditText
android:gravity = "center"
android:layout_width ="200dp"
android:layout_height = "50dp"
android:layout_below = "@id/textname"
android:id = "@+id/input"
/>
<ImageButton
android:gravity = "bottom"
android:layout_width ="200dp"
android:layout_height = "50dp"
android:text = "Confirm"
android:textColor = "#ffffff"
android:background = "@drawable/done"
android:layout_marginBottom= "-100dp"
/>
</RelativeLayout
我的第二个活动
package com.mycompany.myapp;
import android.app.*;
import android.os.*;
import android.widget.*;
import android.view.*;
import android.content.Intent;
public class genderselection extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.gender);
}
}
MySecondActivity xml 文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ImageButton
android:gravity= "center_vertical"
android:layout_height = "120dp"
android:layout_width = "120dp"
android:background = "@drawable/mprofile"
/>
</LinearLayout
清单文件
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mycompany.myapp" >
<application
android:allowBackup="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:resizeableActivity = "true">
<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>
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
</application>
</manifest>
我是全新的,没有使用 android studio。 这只是一个简单的ide 请帮助我 谢谢
我正在使用 Play 商店的 ide 并在我的手机中进行此编码
解决方法
尝试使用以下代码,不要在清单文件中添加第二个活动。尝试更新您的清单文件。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mycompany.myapp" >
<application
android:allowBackup="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:resizeableActivity = "true">
<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>
<activity
android:name=".genderselection"
android:label="@string/app_name" >
</activity>
</application>
</manifest>
,
首先,在您的清单文件中,我注意到您的活动与 .MainActivity 的名称设置相同。 您需要删除清单文件中的以下第二个活动标签
`<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>`
并用这一行替换上面的代码用于第二个活动
<activity android:name=".genderselection"></activity>