Java 安卓onclick登录崩溃

Java 安卓onclick登录崩溃,java,android,xml,eclipse,android-intent,Java,Android,Xml,Eclipse,Android Intent,我是新的Android开发者——我正在尝试实现一个onClickListener,这样当点击一个按钮时,它会检查输入的文本,如果正确,就会启动一个新的活动 XML文件或类中都没有显示错误。但是当文本字段与代码匹配时,应用程序崩溃。[在LogCat中,在行中:startActivityintent;] 如果你能做到这一点,我们将不胜感激,谢谢 public class HomeMain extends Activity implements OnClickListener { EditTe

我是新的Android开发者——我正在尝试实现一个onClickListener,这样当点击一个按钮时,它会检查输入的文本,如果正确,就会启动一个新的活动

XML文件或类中都没有显示错误。但是当文本字段与代码匹配时,应用程序崩溃。[在LogCat中,在行中:startActivityintent;]

如果你能做到这一点,我们将不胜感激,谢谢

public class HomeMain extends Activity implements OnClickListener {
    EditText editTextUN;
    EditText editTextPW;
    Button buttonlogin;
    Button buttoncancel;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_home_main);

        editTextUN = (EditText) findViewById(R.id.editTextUN);
        editTextPW = (EditText) findViewById(R.id.editTextPW);
        buttonlogin = (Button) findViewById(R.id.buttonlogin);
        buttoncancel = (Button) findViewById(R.id.buttoncancel);

        buttonlogin.setOnClickListener(this);
        buttoncancel.setOnClickListener(this);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; 
        // this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.home_main, menu);
        return true;
    }

    @Override
    public void onClick(View v) {
        String un=editTextUN.getText().toString();
        String pw=editTextPW.getText().toString();
            switch (v.getId()) {
            case R.id.buttonlogin:
                if(un.equals("techie") && pw.equals("techie")) {
                    Intent x=new Intent(this,Menu.class);
                    startActivity(x);
                }
                break;
            case R.id.buttoncancel:
                editTextUN.setText("");
                editTextPW.setText("");
                break;
            default: break;
            }
    }
}
这是我的另一门课,onClick应该去上。这里还没发生什么事。现在它只是另一个屏幕

public class Menu extends Activity implements OnClickListener {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_menu);
    }
    public void onClick(View v) {}
}
还有,LogCat错误:

E/AndroidRuntime(1702): FATAL EXCEPTION: main
E/AndroidRuntime(1702): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.appname.appname/android.view.Menu}; have you declared this activity in your AndroidManifest.xml?
E/AndroidRuntime(1702):     at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1628)
E/AndroidRuntime(1702):     at android.app.Instrumentation.execStartActivity(Instrumentation.java:1424)
E/AndroidRuntime(1702):     at android.app.Activity.startActivityForResult(Activity.java:3390)
E/AndroidRuntime(1702):     at android.app.Activity.startActivityForResult(Activity.java:3351)
E/AndroidRuntime(1702):     at android.app.Activity.startActivity(Activity.java:3587)
E/AndroidRuntime(1702):     at android.app.Activity.startActivity(Activity.java:3555)
E/AndroidRuntime(1702):     at com.appname.appname.HomeMain.onClick(HomeMain.java:52)
E/AndroidRuntime(1702):     at android.view.View.performClick(View.java:4240)
E/AndroidRuntime(1702):     at android.view.View$PerformClick.run(View.java:17721)
E/AndroidRuntime(1702):     at android.os.Handler.handleCallback(Handler.java:730)
E/AndroidRuntime(1702):     at android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime(1702):     at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime(1702):     at android.app.ActivityThread.main(ActivityThread.java:5103)
E/AndroidRuntime(1702):     at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(1702):     at java.lang.reflect.Method.invoke(Method.java:525)
这是下面的清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.appname.appname"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="17"
    android:targetSdkVersion="18" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.appname.appname.HomeMain"
        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="com.appname.appname.Admin"
        android:label="@string/title_activity_create" >
    </activity>
    <activity
        android:name="com.appname.appname.MainActivity"
        android:label="@string/activity_main" >
    </activity>
    <activity
        android:name="com.appname.appname.NewJob"
        android:label="@string/add_new_job" >
    </activity>
    <activity
        android:name="com.appname.appname.EditJob"
        android:label="@string/edit_job" >
    </activity>
    <activity
        android:name="com.appname.appname.Scroll"
        android:label="@string/title_activity_scroll" >
    </activity>
    <activity
        android:name="com.appname.appname.AddNewJob"
        android:label="@string/title_activity_add_new_job" >
    </activity>

    <activity
        android:name="com.appname.appname.Home"
        android:label="@string/title_activity_home" >
    </activity>

    <activity 
        android:name="com.appname.appname.HomeMain"
        android:label="@string/title_activity_home_main" >

    </activity>

    <activity
        android:name="com.appname.appname.Menu"
        android:label="@string/title_activity_menu" >
    </activity>

</application>

这里显示的代码中没有需要修复的内容。基于LogCat,您的应用程序在执行startActivity时崩溃。问题在于运行其他活动。如果您还发布Menu.java和完整的LogCat消息,那么有人可以帮助您调试代码。

您尚未在清单中声明菜单活动

加上这个

<activity android:name="com.appname.appname.Menu"/>

如果不同,请更改包名。

首先从清单中删除额外的活动声明

要修复此错误,请更改此行

意图x=新意图此,Menu.class

意向x=新意向此,com.appname.appname.Menu.class


您的HomeMain活动已经具有import android.view.Menu

您的“活动”菜单与实际的view.Menu之间发生冲突

不要调用Menu.class,而是调用com.appname.appname.Menu.class


或者重命名您的活动。

您是否已将菜单活动添加到清单中?是否已发布活动\u home\u main.xml?LogCat中声明的按钮。菜单活动在我的清单中。按钮在XML中声明。是否将名称声明为.Menu?如果是,则替换为完整的包路径。无法识别清单中的活动。清单中菜单活动的包名称似乎错误。它指的是菜单View@user3577160没问题!只是想让你知道,既然你是新来的,你可以将答案标记为已接受,而不是在评论中提及它。
<activity 
    android:name="com.appname.appname.HomeMain"
    android:label="@string/title_activity_home_main" >
</activity>
Intent x = new Intent(this, com.appname.appname.Menu.class);
startActivity(x);