某些情况下脸颊活动的动态开始

时间:2011-11-16 07:18:55

标签: android android-activity android-edittext bundle if-statement

实际上在我的应用程序中,我已经将活动设置为主要活动,我在该活动中检查在此活动中检索的某些文本包值的条件,该活动是在检查edittext长度是否为null并且根据该开放时启动活动每个条件的相应活动,但它给我一个错误: -

11-16 12:40:48.588: E/AndroidRuntime(456): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.avigma.shpoonkle/com.avigma.shpoonkle.CheckActivity}: java.lang.NullPointerException
11-16 12:40:48.588: E/AndroidRuntime(456):  at com.avigma.shpoonkle.CheckActivity.onCreate(CheckActivity.java:19)

我正在提供我的CheckActivity课程,请帮助我...提前感谢...

 public class CheckActivity extends Activity{
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Bundle i=  getIntent().getExtras();
        String a=i.getString("a");
        String b12=i.getString("b12");
        String c1=i.getString("c1");
        String d=i.getString("d");
        String e111=i.getString("e111");
        String h=i.getString("h");
        Intent i1;

        if((a.length()>1)&&(b12.length()>1)&&(c1.length()>1)&&(d.length()>1)&&(e111.length()>1)&&(h.length()>1))
        {
            i1 =new Intent(getApplicationContext(),ShpoonkleActivity.class);
        }
        else
        {
            i1=new Intent(getApplicationContext(),Test.class);
        }
        startActivity(i1);
        finish();
    }
}

2 个答案:

答案 0 :(得分:2)

检查第19行。 nullPointerException意味着您正在尝试访问实际为null的对象/变量。

粗略地看一眼if((a.length()>1)&&(b12.length()>1)&&(c1.length()>1)&&(d.length()>1)&&(e111.length()>1)&&(h.length()>1))似乎是a / b12 ......可能为空的行

答案 1 :(得分:0)

如果我没有弄错的话,您已将CheckActivity设置为主要启动器活动。那么如何发送额外内容以启动该活动?当您的应用程序打开时,该活动会自动调用。

另外,如果您要检查getIntent().hasExtra("a")并且其他字符串也一样,那么您将始终获得false,因为您的意图不会附加任何此类附加内容。

所以基本上,你的工作方式不合适。使用其他解决方案来满足你的需求。