简体   繁体   English

无法启动活动的Android模拟器

[英]Unable to start activity Android Emulator

I'm new to Android Programming. 我是Android编程的新手。 I'm following the guide on Android Developers to get started with Android. 我正在遵循Android开发人员指南来开始使用Android。 When trying to run simple Formular on the Emulator, the emulator shows 尝试在模拟器上运行简单的Formular时,模拟器显示

"Unfortunately, My First App has stopped.", “很遗憾,我的第一个应用已停止。”,

where MyFormular is name of the App. 其中MyFormular是应用程序的名称。 The Problem is that I made new layout from layout resource file and tried to connect to the new loyout fror here 问题是我从布局资源文件制作了新布局,并尝试在此处连接到新的loyout fror

setContentView(R.layout.form_layout (the new layout is form_layout)

the new layout 新布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="match_parent"
android:layout_height="match_parent">

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="5">

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Please submit your details"
        android:id="@+id/textView"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginTop="46dp" />

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="textPersonName"
        android:text="Name"
        android:ems="10"
        android:id="@+id/editText"
        android:layout_marginTop="46dp"
        android:layout_below="@+id/textView"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:hint="Name" />

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="textEmailAddress"
        android:ems="10"
        android:id="@+id/editText2"
        android:layout_centerVertical="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginTop="46dp"
        android:hint="Email" />

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="textPassword"
        android:ems="10"
        android:id="@+id/editText3"
        android:layout_below="@+id/editText2"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginTop="46dp"
        android:hint="Password" />

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="textPassword"
        android:ems="10"
        android:id="@+id/editText4"
        android:layout_below="@+id/editText3"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginTop="46dp"
        android:hint="Confirm Password" />
</RelativeLayout>

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="5">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/imageView"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="36dp"
        android:src="@mipmap/ic_launcher" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Terms &amp; Conditions"
        android:id="@+id/textView2"
        android:layout_below="@+id/imageView"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="46dp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="A Terms and Conditions can be used for both your "
        android:id="@+id/textView3"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="10dp" />

    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="I agree"
        android:id="@+id/checkBox"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginLeft="38dp"
        android:layout_marginStart="38dp"
        android:layout_marginBottom="38dp"
        android:checked="false"
        android:layout_marginRight="46dp" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Can&apos;t wait!Sign me up!"
        android:id="@+id/button"
        android:layout_alignTop="@+id/checkBox"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_marginRight="85dp"
        android:layout_marginEnd="75dp" />
</RelativeLayout>
</LinearLayout>

MainFormular.java MainFormular.java

    package com.example.melisa.myformular;

     import android.os.Bundle;
     import android.support.design.widget.FloatingActionButton;
     import android.support.design.widget.Snackbar;
     import android.support.v7.app.AppCompatActivity;
     import android.support.v7.widget.Toolbar;
     import android.view.View;
     import android.view.Menu;
     import android.view.MenuItem;

     public class MainFormular extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.form_layout);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        FloatingActionButton fab = (FloatingActionButton) findViewById  (R.id.fab);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                        .setAction("Action", null).show();
            }
        });
    }

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

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }


 }

at android.app.Activity.performCreate (activity_main_formular 在android.app.Activity.performCreate(activity_main_formular

 <?xml version="1.0" encoding="utf-8"?>

<android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        app:popupTheme="@style/AppTheme.PopupOverlay" />

</android.support.design.widget.AppBarLayout>

<include layout="@layout/content_main_formular" />

<android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom|end"
    android:layout_margin="@dimen/fab_margin"
    android:src="@android:drawable/ic_dialog_email" />

  </android.support.design.widget.CoordinatorLayout>

logcat 日志猫

Log is, 日志是

04-30 09:13:11.176 10175-10175/com.example.melisa.myformular I/Process: Sending signal. 04-30 09:13:11.176 10175-10175 / com.example.melisa.myformular I / Process:正在发送信号。 PID: 10175 SIG: 9 04-30 10:03:45.336 10427-10427/com.example.melisa.myformular W/System: ClassLoader referenced unknown path: /data/app/com.example.melisa.myformular-1/lib/x86 04-30 10:03:47.008 10427-10427/com.example.melisa.myformular W/System: ClassLoader referenced unknown path: /data/app/com.example.melisa.myformular-1/lib/x86 04-30 10:03:47.112 10427-10427/com.example.melisa.myformular W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable 04-30 10:03:47.128 10427-10427/com.example.melisa.myformular D/AndroidRuntime: Shutting down VM PID:10175 SIG:9 04-30 10:03:45.336 10427-10427 / com.example.melisa.myformular W /系统:ClassLoader引用的未知路径:/data/app/com.example.melisa.myformular-1/lib / x86 04-30 10:03:47.008 10427-10427 / com.example.melisa.myformular W /系统:ClassLoader引用的未知路径:/data/app/com.example.melisa.myformular-1/lib/x86 04- 30 10:03:47.112 10427-10427 / com.example.melisa.myformular W / art:在Android 4.1之前,方法android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter,android .content.res.ColorStateList,android.graphics.PorterDuff $ Mode)会错误地覆盖android.graphics.drawable.Drawable 04-30 10:03:47.128 10427-10427 / com.example.melisa中的package-private方法。 myformular D / AndroidRuntime:关闭VM

04-30 10:03:47.128 10427-10427/com.example.melisa.myformular E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.melisa.myformular, PID: 10427 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.melisa.myformular/com.example.melisa.myformular.MainFormular}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.design.widget.FloatingActionButton.setOnClickListener(android.view.View$OnClickListener)' on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) at android.app.ActivityThread.-wrap11(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com 04-30 10:03:47.128 10427-10427 / com.example.melisa.myformular E / AndroidRuntime:致命例外:主进程:com.example.melisa.myformular,PID:10427 java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.melisa.myformular / com.example.melisa.myformular.MainFormular}:java.lang.NullPointerException:尝试调用虚拟方法'void android.support.design.widget.FloatingActionButton.setOnClickListener(android.view。 View $ OnClickListener)在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)在android.app.ActivityThread.-wrap11( android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1344)上的ActivityThread.java)android.os.Looper.loop(Looper.java:148)上android.os.Handler.dispatchMessage(Handler.java:102)上的ActivityThread.java) )在android.app.ActivityThread.main(ActivityThread.java:5417)在com的java.lang.reflect.Method.invoke(本机方法) .android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.design.widget.FloatingActionButton.setOnClickListener(android.view.View$OnClickListener)' on a null object reference at com.example.melisa.myformular.MainFormular.onCreate(MainFormular.java:22) at android.app.Activity.performCreate(Activity.java:6237) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) at android.app.ActivityThread.-wrap11(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(Activ android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:726)位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)原因:java.lang.NullPointerException:尝试调用虚函数'void android.support.design.widget.FloatingActionButton.setOnClickListener(android.view.View $ OnClickListener)'在com.example.melisa.myformular.MainFormular.onCreate(MainFormular.java:22)上的空对象引用上android.app.Activity.performCreate(Activity.java:6237)在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)在android.app.ActivityThread .handleLaunchActivity(ActivityThread.java:2476)在android.app.ActivityThread.-wrap11(ActivityThread.java)在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1344)在android.os.Handler.dispatchMessage(Handler .java:102),位于android.os.Looper.loop(Looper.java:148),位于android.app.ActivityThread.main(Activ ityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 位于com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:726)处的java.lang.reflect.Method.invoke(本机方法)处的ityThread.java:5417) ZygoteInit.main(ZygoteInit.java:616)

Please remove this code and try to run your appliction...... 请删除此代码,然后尝试运行您的应用程序……

In your layout FloatingActionButton view is not there and you are trying to bind and make click event on that ...... 在您的布局中,不存在FloatingActionButton视图,并且您试图在该位置上绑定并使​​其产生click事件……

FloatingActionButton fab = (FloatingActionButton) findViewById  (R.id.fab);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                        .setAction("Action", null).show();
            }
        });

and this also...... 这也......

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

Enjoy coding.... 享受编码...。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM