android项目中的空指针异常

android项目中的空指针异常,android,android-layout,android-fragments,android-intent,android-activity,Android,Android Layout,Android Fragments,Android Intent,Android Activity,在我的项目中,我在下面显示的类中得到了nullpointerexception,我还附加了下面的logcat和java类。在if的情况下,我给出了类似“if(name==null)”的条件,我不确定它是正确的还是错误的if-Error意味着建议我使用正确的代码来解决NPE 先谢谢你 public void onClick(DialogInterface dialog,int id) { // yes(); Intent tablewise = n

在我的项目中,我在下面显示的类中得到了nullpointerexception,我还附加了下面的logcat和java类。在if的情况下,我给出了类似“if(name==null)”的条件,我不确定它是正确的还是错误的if-Error意味着建议我使用正确的代码来解决NPE

先谢谢你

public void onClick(DialogInterface dialog,int id)
 {
                        // yes();
Intent tablewise = new Intent(Seating_Engagement.this,LoginForm.class);
                            startActivity(tablewise);
                            finish();

                        }
                })
日志:

10-13 10:25:33.914  24201-24201/com.sentientit.theiWedplanner E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.NullPointerException
            at com.sentientit.theiWedplanner.Seating_Engagement$2.onClick(Seating_Engagement.java:77)
            at android.view.View.performClick(View.java:4421)
            at android.view.View$PerformClick.run(View.java:18190)
            at android.os.Handler.handleCallback(Handler.java:725)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:175)
            at android.app.ActivityThread.main(ActivityThread.java:5279)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
            at dalvik.system.NativeStart.main(Native Method)
10-13 10:25:45.445  24201-24206/com.sentientit.theiWedplanner I/dalvikvm﹕ threadid=3: reacting to signal 3
10-13 10:25:45.578  24201-24206/com.sentientit.theiWedplanner I/dalvikvm﹕ Wrote stack traces to '/data/anr/traces.txt'
在第77行出现异常,我在下面的java文件中将该行标记为(77)

座舱订婚

    import android.app.AlertDialog;
    import android.app.Dialog;
    import android.app.ProgressDialog;
    import android.content.Context;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.net.ConnectivityManager;
    import android.net.NetworkInfo;
    import android.os.Bundle;
    import android.support.v4.app.FragmentActivity;
    import android.view.View;
    import android.widget.Button;

    import com.bugsense.trace.BugSenseHandler;

    import java.util.StringTokenizer;

    public class Seating_Engagement extends FragmentActivity{

        ProgressDialog myProgressDialog = null;
        String username=welcomeuser1.usernamevalue;
        String result=null;
        String nameresult=null;
        String Table,Chart=null;
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);       BugSenseHandler.initAndStartSession(this, "68640bea");

            setContentView(R.layout.seatingchart);

            Button familywise=(Button)findViewById(R.id.familywise);
            Button tablewisesummary=(Button)findViewById(R.id.tableclassify);
            Button assignedguest=(Button)findViewById(R.id.assignedguest);
            Button notassignedguest=(Button)findViewById(R.id.notassignedguest);
            Button tablechair=(Button)findViewById(R.id.tableclass);
            Button groupwise=(Button)findViewById(R.id.groupwise);
            Button tablewise=(Button)findViewById(R.id.tablewisesummary);
            Button familywisesummary=(Button)findViewById(R.id.familywisesummary);
            Button groupwisesummary=(Button)findViewById(R.id.groupwisesummary);
            Button arrangementsummary=(Button)findViewById(R.id.totaltables);


             Button back=(Button)findViewById(R.id.back);
            Button seatingoverview =(Button)findViewById(R.id.seatingview);

            back.setOnClickListener(new View.OnClickListener() {

                //@Override
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    finish();
                }
            });

            seatingoverview.setOnClickListener(new View.OnClickListener() {

                //@Override
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub

                    if(username.equals("null"))
                    {
                        Dialog locationError = new AlertDialog.Builder(
                                Seating_Engagement.this)
                        .setIcon(0)
                        .setTitle("Message!")
                        .setPositiveButton(R.string.ok1,
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                        int id) {
                        // yes();
 (77)   Intent tablewise = new Intent(Seating_Engagement.this,LoginForm.class);
                            startActivity(tablewise);
                            finish();
                            }
                    })
                        .setMessage("Registered users can access this page. Click 'Yes' to login")
                        .setNegativeButton(R.string.no,
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {


                            }
                        })

                        .create();
                        locationError.show();
                    }
                    else
                    {
                        Dialog locationError = new AlertDialog.Builder(
                                Seating_Engagement.this)
                        .setIcon(0)

                        .setPositiveButton("Table",
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                // yes();
                                Intent tablewise = new Intent(Seating_Engagement.this,
                                        Seating_EngagementTable.class);
                                startActivity(tablewise);
                                //  finish();


                            }
                        })

                        .setNegativeButton("Chart",
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                Intent tab=new Intent(Seating_Engagement.this,Seating_Engagementviewtable.class);
                                startActivity(tab);
                                finish();


                            }
                        })

                        .create();
                        locationError.show();


                    }



                }
            });


            notassignedguest.setOnClickListener(new View.OnClickListener() {

                @Override
                public void onClick(View v) {

                    Intent tablewise=new Intent(Seating_Engagement.this,Engagement_Notyetseated.class); 
                    startActivity(tablewise);
                    //                  finish();

                }

            });

            assignedguest.setOnClickListener(new View.OnClickListener() {

                @Override
                public void onClick(View v) {
                    Intent tablewise=new Intent(Seating_Engagement.this,Engagement_AssignedGuest.class);
                    startActivity(tablewise);
                    //finish();

                }

            });



            tablechair.setOnClickListener(new View.OnClickListener() {

                //@Override
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Intent tablewise=new Intent(Seating_Engagement.this,Engagement_TableClassify.class);    
                    startActivity(tablewise);
                    //                  finish();

                }
            });


            tablewisesummary.setOnClickListener(new View.OnClickListener() {

                //@Override
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub

                    if(username.equals("null"))
                    {
                        Dialog locationError = new AlertDialog.Builder(
                                Seating_Engagement.this)
                        .setIcon(0)
                        .setTitle("Message!")
                        .setPositiveButton(R.string.ok1,
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                // yes();
                                Intent tablewise = new Intent(Seating_Engagement.this,
                                        LoginForm.class);
                                startActivity(tablewise);
                                finish();


                            }
                        })
                        .setMessage("Registered users can access this page. Click 'Yes' to login")
                        .setNegativeButton(R.string.no,
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {


                            }
                        })

                        .create();
                        locationError.show();
                    }
                    else
                    {
                        Dialog locationError = new AlertDialog.Builder(
                                Seating_Engagement.this)
                        .setIcon(0)

                        .setPositiveButton("Table",
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                // yes();
                                Intent tablewise = new Intent(Seating_Engagement.this,
                                        Engagement_TableChairSummary.class);
                                startActivity(tablewise);
                                //finish();


                            }
                        })

                        .setNegativeButton("Chart",
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                Intent tab=new Intent(Seating_Engagement.this,Engagement_ViewTable.class);
                                startActivity(tab);
                                finish();


                            }
                        })

                        .create();
                        locationError.show();


                    }



                }
            });


            familywisesummary.setOnClickListener(new View.OnClickListener() {

                //@Override
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub

                    if(username.equals("null"))
                    {
                        Dialog locationError = new AlertDialog.Builder(
                                Seating_Engagement.this)
                        .setIcon(0)
                        .setTitle("Message!")
                        .setPositiveButton(R.string.ok1,
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                // yes();
                                Intent tablewise = new Intent(Seating_Engagement.this,
                                        LoginForm.class);
                                startActivity(tablewise);
                                finish();


                            }
                        })
                        .setMessage("Registered users can access this page. Click 'Yes' to login")
                        .setNegativeButton(R.string.no,
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {


                            }
                        })

                        .create();
                        locationError.show();
                    }
                    else
                    {
                        Dialog locationError = new AlertDialog.Builder(
                                Seating_Engagement.this)
                        .setIcon(0)

                        .setPositiveButton("Table",
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                // yes();
                                Intent tablewise = new Intent(Seating_Engagement.this,
                                        Engagement_Familywisesummary.class);
                                startActivity(tablewise);
                                //finish();


                            }
                        })

                        .setNegativeButton("Chart",
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                Intent tab=new Intent(Seating_Engagement.this,Engagement_Familyviewtable.class);
                                startActivity(tab);
                                finish();


                            }
                        })

                        .create();
                        locationError.show();

                    }


                }
            });

            groupwisesummary.setOnClickListener(new View.OnClickListener() {

                //@Override
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub

                    if(username.equals("null"))
                    {
                        Dialog locationError = new AlertDialog.Builder(
                                Seating_Engagement.this)
                        .setIcon(0)
                        .setTitle("Message!")
                        .setPositiveButton(R.string.ok1,
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                // yes();
                                Intent tablewise = new Intent(Seating_Engagement.this,
                                        LoginForm.class);
                                startActivity(tablewise);
                                finish();


                            }
                        })
                        .setMessage("Registered users can access this page. Click 'Yes' to login")
                        .setNegativeButton(R.string.no,
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {


                            }
                        })

                        .create();
                        locationError.show();
                    }
                    else
                    {
                        Dialog locationError = new AlertDialog.Builder(
                                Seating_Engagement.this)
                        .setIcon(0)

                        .setPositiveButton("Table",
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                // yes();
                                Intent tablewise = new Intent(Seating_Engagement.this,
                                        Engagement_Groupwisesummary.class);
                                startActivity(tablewise);
                                //finish();


                            }
                        })

                        .setNegativeButton("Chart",
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                Intent tab=new Intent(Seating_Engagement.this,Engagement_Groupviewtable.class);
                                startActivity(tab);
                                finish();


                            }
                        })

                        .create();
                        locationError.show();

                    }


                }
            });

            familywise.setOnClickListener(new View.OnClickListener() {

                //@Override
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub


                    //  String user_url ="http://mobileapps.iwedplanner.com/mobileapps/iwedplanner/mobile/tabledisplay.aspx?unme="+username+"&occasion=Engagement";
                    String user_url ="http://mobileapps.iwedplanner.com/mobileapps/iwedplanner/mobile/version21/seating-table-display.aspx?unme="+username+"&occasion=Engagement";


                    httpclass obj = new httpclass();
                    result = obj.server_conn(user_url);

                    StringTokenizer st = new StringTokenizer(result, "|");
                    result = st.nextToken();

                    //  String user ="http://mobileapps.iwedplanner.com/mobileapps/iwedplanner/mobile/Notallocated_familywise.aspx?unme="+username+"&occasion=Engagement";

                    String user="http://mobileapps.iwedplanner.com/mobileapps/iwedplanner/mobile/version21/notallocated_familywise.aspx?unme="+username+"&occasion=Engagement";

                    httpclass objg = new httpclass();
                    nameresult = objg.server_conn(user);

                    StringTokenizer s = new StringTokenizer(nameresult, "|");
                    nameresult = s.nextToken();

                    if(result.equals("There is no table"))
                    {

                        alertbox("Assignment", "None of the table has been created");

                    }
                    else if(nameresult.equals("No Guests"))
                    {

                        alertbox("Assignment", "No Guest invited");

                    }
                    else
                    {
                        boolean netvalue = false;
                        ConnectivityManager cm = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);


                        NetworkInfo info = cm.getActiveNetworkInfo();
                        if (info != null && info.isAvailable()) {
                            netvalue = true;
                            Intent tablewise=new Intent(Seating_Engagement.this,Engagement_FamilwiseAllocation.class);  

                            startActivity(tablewise);
                            //  finish();
                        }
                        else
                        {
                            alertbox("Message!", "No Internet Connection!");
                        }
                    }




                }
            });

            groupwise.setOnClickListener(new View.OnClickListener() {

                //@Override
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub


                    //  String user_url ="http://mobileapps.iwedplanner.com/mobileapps/iwedplanner/mobile/tabledisplay.aspx?unme="+username+"&occasion=Engagement";

                    String user_url ="http://mobileapps.iwedplanner.com/mobileapps/iwedplanner/mobile/version21/tabledisplay.aspx?unme="+username+"&occasion=Engagement";

                    httpclass obj = new httpclass();
                    result = obj.server_conn(user_url);

                    StringTokenizer st = new StringTokenizer(result, "|");
                    result = st.nextToken();

                    //  String user ="http://mobileapps.iwedplanner.com/mobileapps/iwedplanner/mobile/Not_allocated_notfamily.aspx?unme="+username+"&occasion=Engagement";
                    String user="http://mobileapps.iwedplanner.com/mobileapps/iwedplanner/mobile/version21/Not_allocated_notfamily.aspx?unme="+username+"&occasion=Engagement";


                    httpclass objg = new httpclass();
                    nameresult = objg.server_conn(user);

                    StringTokenizer s = new StringTokenizer(nameresult, "|");
                    nameresult = s.nextToken();         
                    if(result.equals("There is no table"))
                    {

                        alertbox("Summary", "None of the table has been created");

                    }
                    else if(nameresult.equals("No Guests"))
                    {

                        alertbox("Assignment", "No Guest invited");

                    }
                    else
                    {

                        Intent tablewise=new Intent(Seating_Engagement.this,Engagement_GroupWiseAllocation.class);                              
                        startActivity(tablewise);
                        //finish();
                    }


                }
            });

            tablewise.setOnClickListener(new View.OnClickListener() {

                //@Override
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub

                    if(username.equals("null"))
                    {
                        Dialog locationError = new AlertDialog.Builder(
                                Seating_Engagement.this)
                        .setIcon(0)
                        .setTitle("Message!")
                        .setPositiveButton(R.string.ok1,
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                // yes();
                                Intent tablewise = new Intent(Seating_Engagement.this,
                                        LoginForm.class);
                                startActivity(tablewise);
                                finish();


                            }
                        })
                        .setMessage("Registered users can access this page. Click 'Yes' to login")
                        .setNegativeButton(R.string.no,
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {


                            }
                        })

                        .create();
                        locationError.show();
                    }
                    else
                    {
                        Dialog locationError = new AlertDialog.Builder(
                                Seating_Engagement.this)
                        .setIcon(0)

                        .setPositiveButton("Table",
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                // yes();
                                Intent tablewise = new Intent(Seating_Engagement.this,
                                        Engagement_TableWiseSummary.class);
                                startActivity(tablewise);
                                //finish();


                            }
                        })

                        .setNegativeButton("Chart",
                                new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                Intent tab=new Intent(Seating_Engagement.this,Engagement_Tableviewtable.class);
                                startActivity(tab);
                                finish();


                            }
                        })

                        .create();
                        locationError.show();
                    }



                }
            });



            arrangementsummary.setOnClickListener(new View.OnClickListener() {

                //@Override
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub

                    // String user_url ="http://mobileapps.iwedplanner.com/mobileapps/iwedplanner/mobile/tabledisplay.aspx?unme="+username+"&occasion=Engagement";

                    String user_url ="http://mobileapps.iwedplanner.com/mobileapps/iwedplanner/mobile/version21/tabledisplay.aspx?unme="+username+"&occasion=Engagement";


                    httpclass obj = new httpclass();
                    result = obj.server_conn(user_url);

                    StringTokenizer st = new StringTokenizer(result, "|");
                    result = st.nextToken();


                    if(result.equals("There is no table"))
                    {

                        alertbox("Summary", "None of the table has been created");

                    }
                    else
                    {

                        Intent tablewise=new Intent(Seating_Engagement.this,Engagement_TotalSeatingStatus.class);        
                        startActivity(tablewise);
                        //  finish();
                    }
                }

            });

        }
        protected void alertbox(String title, String mymessage)  
        {  
            new AlertDialog.Builder(this)  
            .setMessage(mymessage)  
            .setTitle(title)  
            .setCancelable(true)  
            .setNeutralButton(android.R.string.ok,  
                    new DialogInterface.OnClickListener() {  
                @Override
                public void onClick(DialogInterface dialog, int whichButton){}  
            })  
            .show();  
        } 
        @Override
        public void onStart() {
            super.onStart();
            // The rest of your onStart() code.
            //  EasyTracker.getInstance(this).activityStart(this);  // Add this method.
        }

        @Override
        public void onStop() {
            super.onStop();
            // The rest of your onStop() code.
            // EasyTracker.getInstance(this).activityStop(this);  // Add this method.
        }

    }

您没有正确检查用户名是否为空。这就是您的NPE所在的位置,用户名为null,但您对其调用“equals()”方法

将其更改为:

if(username == null){
   (...)
}
试试这个

  if (TextUtils.isEmpty(username)) {

        //code here

    } else{

        //code here
    }

您可以更改(77)Intent tablewise=新Intent(seatching\u Engagement.this,LoginForm.class)

Intent tablewise=newintent(getActivity(),LoginForm.class)


getActivity().startActivity(表级)

不要使用
username.equals(“null”)
use
username==null
@shayan pourvatan仍然通过更改username==null@jvrodrigues获得相同的NPE。我已将其更改为(username==null)仍然获得相同的NPE。那么“getActivity()”呢?当我尝试此代码时,它会显示错误如果您想将您的参与变成一个片段,您可以更改公务舱座位\u订婚扩展片段我已经扩展了它我尝试过它仍然获得NPE。如果有其他方法解决它您尝试过上面的一个@Sanju吗?是的,我尝试过仍然获得相同的NPERY另一个@Vimal@Naveen请查看if条件下的现有代码以便使用什么行应从if条件中删除
   if(username.equals("")){

    Toast.makeText(getApplicationContext(), "Please Enter Username", Toast.LENGTH_SHORT).show();
 }
 else{

     //code here      

 }
final String user= username.getText().toString();

if (user.matches("")) {
    username.setError("Please Enter Name");
}