Android活动没有响应

时间:2014-04-23 05:00:28

标签: android android-intent android-activity

我的应用程序中有3个活动,当用户按下一个按钮时,下一个活动会显示给用户,现在一切正常,除非它到达最后一个活动,即当用户在第二个最后一个活动上按下一个时,会显示一条错误消息该应用程序已停止工作且LogCat中没有错误,以下是我的最终活动的.java文件

package com.example.first;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import android.os.Build;

public class FinalActivity extends ActionBarActivity {
    TextView name,address,phone,email,dob,matg,mati,interg,interi,graddeg,gradi,cgpa,skills;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_final);
        name=(TextView)findViewById(R.id.fname);
        address=(TextView)findViewById(R.id.faddress);
        phone=(TextView)findViewById(R.id.fphone);
        email=(TextView)findViewById(R.id.femail);
        dob=(TextView)findViewById(R.id.fdob);
        matg=(TextView)findViewById(R.id.matricgrade);
        mati=(TextView)findViewById(R.id.matricinst);
        interg=(TextView)findViewById(R.id.intergrade);
        interi=(TextView)findViewById(R.id.interinst);
        graddeg=(TextView)findViewById(R.id.graddegree);
        cgpa=(TextView)findViewById(R.id.gradcgpa);
        skills=(TextView)findViewById(R.id.iskills);
        Intent in=getIntent();
        UserBO bo=new UserBO();
        bo.name=in.getStringExtra("name");
        bo.address=in.getStringExtra("address");
        bo.email=in.getStringExtra("email");
        bo.phone=in.getStringExtra("phone");
        bo.dob=in.getStringExtra("dob");
        bo.mg=in.getStringExtra("mgrade");
        bo.mi=in.getStringExtra("minst");
        bo.ig=in.getStringExtra("igrade");
        bo.ii=in.getStringExtra("iinst");
        bo.gg=in.getStringExtra("gdeg");
        bo.gi=in.getStringExtra("ginst");
        bo.cgpa=in.getStringExtra("cgpa");
        bo.skills=in.getStringExtra("skills");
        name.setText("Name : "+bo.name);
        address.setText("Address : "+bo.address);
        email.setText("Email : "+bo.email);
        phone.setText("Phone : "+bo.phone);
        dob.setText("DOB : "+bo.dob);
        matg.setText("Matric Grade : "+bo.mg);
        mati.setText("Institution : "+bo.mi);
        interg.setText("Inter Grade : "+bo.ig);
        interi.setText("Institution : "+bo.ii);
        graddeg.setText("Graduation Degree : "+bo.gg);
        gradi.setText("Institution : "+bo.gi);
        skills.setText("Skills : "+bo.skills);


    }



}


这是xml文件

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.first.FinalActivity"
    tools:ignore="MergeRootFrame" >
 <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/fname"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/faddress"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/fphone"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/femail"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/fdob"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/matricgrade"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/matricinst"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/intergrade"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/interinst"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/graddegree"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/gradinst"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/gradcgpa"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

        <TextView
            android:id="@+id/iskills"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />
        <TextView

       android:id="@+id/hobbies"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="" />

    </LinearLayout>
    </ScrollView>

</FrameLayout>


我在这里打电话给最后的活动

package com.example.first;

import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.os.Build;

public class Activity2 extends ActionBarActivity {

    Button next3;
    EditText s1,s2,s3,s4,s5;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_activity2);
        next3=(Button)findViewById(R.id.next3);
        s1=(EditText)findViewById(R.id.sk1);
        s2=(EditText)findViewById(R.id.sk2);
        s3=(EditText)findViewById(R.id.sk3);
        s4=(EditText)findViewById(R.id.sk4);
        s5=(EditText)findViewById(R.id.sk5);
         next3.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Intent in=getIntent();
                    UserBO bo=new UserBO();
                    bo.name=in.getStringExtra("name");
                    bo.address=in.getStringExtra("address");
                    bo.email=in.getStringExtra("email");
                    bo.phone=in.getStringExtra("phone");
                    bo.dob=in.getStringExtra("dob");
                    bo.mg=in.getStringExtra("mgrade");
                    bo.mi=in.getStringExtra("minst");
                    bo.ig=in.getStringExtra("igrade");
                    bo.ii=in.getStringExtra("iinst");
                    bo.gg=in.getStringExtra("gdeg");
                    bo.gi=in.getStringExtra("ginst");
                    bo.cgpa=in.getStringExtra("cgpa");
                    bo.skills+=s1.getText().toString()+","+s1.getText().toString()+","+s2.getText().toString()+","+s3.getText().toString()+","+s4.getText().toString()+","+s5.getText().toString();
                    Intent i=new Intent(getApplicationContext(),FinalActivity.class);//this,same
                    System.out.println(bo.name);
                    i.putExtra("name", bo.name);
                    i.putExtra("address", bo.address);
                    i.putExtra("email", bo.email);
                    i.putExtra("phone", bo.phone);
                    i.putExtra("dob", bo.dob);
                    i.putExtra("mgrade", bo.mg);
                    i.putExtra("minst", bo.mi);
                    i.putExtra("igrade", bo.ig);
                    i.putExtra("iinst", bo.ii);
                    i.putExtra("gdeg", bo.gg);
                    i.putExtra("ginst", bo.gi);
                    i.putExtra("cgpa", bo.cgpa);
                    i.putExtra("skills", bo.skills);



                    startActivity(i);

                }
            });



    }


这是活动1

package com.example.first;

import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.os.Build;

public class Activity1 extends ActionBarActivity {

    Button next2;
    EditText matGrade,matInst,iGrade,iInst,gDegree,gInst,gCgpa;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_activity1);
         next2=(Button)findViewById(R.id.next2);
            matGrade=(EditText)findViewById(R.id.mgrade);
            matInst=(EditText)findViewById(R.id.minst);
            iGrade=(EditText)findViewById(R.id.igrade);
            iInst=(EditText)findViewById(R.id.iinst);
            gDegree=(EditText)findViewById(R.id.gdegree);
            gInst=(EditText)findViewById(R.id.ginst);
            gCgpa=(EditText)findViewById(R.id.cgpa);
            next2.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Intent in=getIntent();
                    UserBO bo=new UserBO();
                    bo.name=in.getStringExtra("name");
                    bo.address=in.getStringExtra("address");
                    bo.email=in.getStringExtra("email");
                    bo.phone=in.getStringExtra("phone");
                    bo.dob=in.getStringExtra("dob");
                    bo.mg=matGrade.getText().toString();
                    bo.mi=matGrade.getText().toString();
                    bo.ig=iGrade.getText().toString();
                    bo.ii=iGrade.getText().toString();
                    bo.gg=gDegree.getText().toString();
                    bo.gi=gDegree.getText().toString();
                    bo.cgpa=gDegree.getText().toString();

                    Intent i=new Intent(getApplicationContext(),Activity2.class);//this,same
                    i.putExtra("name", bo.name);
                    i.putExtra("address", bo.address);
                    i.putExtra("email", bo.email);
                    i.putExtra("phone", bo.phone);
                    i.putExtra("dob", bo.dob);
                    i.putExtra("mgrade", bo.mg);
                    i.putExtra("minst", bo.mi);
                    i.putExtra("igrade", bo.ig);
                    i.putExtra("iinst", bo.ii);
                    i.putExtra("gdeg", bo.gg);
                    i.putExtra("ginst", bo.gi);
                    i.putExtra("cgpa", bo.cgpa);




                    startActivity(i);

                }

    });




}
}


这是主要的活动

package com.example.first;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends ActionBarActivity {





    Button next1;
    EditText name,address,email,phone,date;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        next1=(Button)findViewById(R.id.next1);
        name=(EditText)findViewById(R.id.name);
        address=(EditText)findViewById(R.id.address);
        email=(EditText)findViewById(R.id.email);
        phone=(EditText)findViewById(R.id.phone);
        date=(EditText)findViewById(R.id.date);



        next1.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                UserBO bo=new UserBO();
                bo.name=name.getText().toString();
                bo.address=address.getText().toString();
                bo.email=email.getText().toString();
                bo.phone=phone.getText().toString();
                bo.dob=date.getText().toString();
                Intent i=new Intent(getApplicationContext(),Activity1.class);//this,same
                i.putExtra("name", bo.name);
                i.putExtra("address", bo.address);
                i.putExtra("email", bo.email);
                i.putExtra("phone", bo.phone);
                i.putExtra("dob", bo.dob);




                startActivity(i);

            }
        });








    }




}

请帮我找到错误

1 个答案:

答案 0 :(得分:0)

我认为你有空指针异常。可能在xml布局中遗漏了您的某个控件。例如,您正在寻找&#34; next1&#34;在您的代码中并使用其setOnClickListener方法,而它未在您的xml布局中定义,因此其对象为空。

我建议您将onCreate方法的内容放在try-catch中并调试您的应用程序。