Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 为什么我得到空指针异常?_Android_Android Intent - Fatal编程技术网

Android 为什么我得到空指针异常?

Android 为什么我得到空指针异常?,android,android-intent,Android,Android Intent,我想返回一个布尔值来删除代码中的按钮。我尝试从PassworConfirmationActivity中获取布尔值,并尝试在IndexActivity中使用它,但我得到了一个NullPointerException public class PasswordConfirmationActivity extends Activity { Button ButtonClick; EditText EdtText; Boolean control =new Boolean(false); @Over

我想返回一个布尔值来删除代码中的按钮。我尝试从PassworConfirmationActivity中获取布尔值,并尝试在IndexActivity中使用它,但我得到了一个NullPointerException

public class PasswordConfirmationActivity extends Activity {

Button ButtonClick;
EditText EdtText;
Boolean control =new Boolean(false);

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_password_confirmation);
    EdtText = (EditText) findViewById(R.id.password);
    ButtonClick = (Button) findViewById(R.id.devam);
    ButtonClick.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent inte = new Intent(PasswordConfirmationActivity.this,
                    IndexActivity.class);
            control = true;
            inte.putExtra("confirmation", control);
            startActivity(inte);
            finish();
        }
    });
}
这是我得到NullPointerException的代码

public class PasswordConfirmationActivity extends Activity {

Button ButtonClick;
EditText EdtText;
Boolean control =new Boolean(false);

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_password_confirmation);
    EdtText = (EditText) findViewById(R.id.password);
    ButtonClick = (Button) findViewById(R.id.devam);
    ButtonClick.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent inte = new Intent(PasswordConfirmationActivity.this,
                    IndexActivity.class);
            control = true;
            inte.putExtra("confirmation", control);
            startActivity(inte);
            finish();
        }
    });
}
我用意图来启动

IndexActivity.class

当它试图启动它时,给我nullpointerexception

以下是索引活动:

public class IndexActivity extends Activity {
TextView txt1, txt2, txt3;
Button ButtonClick, ButtonClick2;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    GeneralConstans GC = new GeneralConstans();

    txt1 = (TextView) findViewById(R.id.textView1);
    txt2 = (TextView) findViewById(R.id.textView2);
    txt3 = (TextView) findViewById(R.id.textView5);

    ButtonClick = (Button) findViewById(R.id.order);
    ButtonClick.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(Intent.ACTION_PICK,
                    ContactsContract.Contacts.CONTENT_URI);
            startActivityForResult(intent, 0);
        }
    });

    ButtonClick2 = (Button) findViewById(R.id.login);
    ButtonClick2.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent inte = new Intent(IndexActivity.this,
                    LoginActivity.class);

            startActivity(inte);
        }
    });
    ButtonClick2.setVisibility(1);
在这一行中,我从其他活动中获取参数“确认”


我有一个类似的问题,并且在找到解决方案后没有深入研究,但是尝试向参数添加名称空间。实际值并不重要,但我猜Android会以不同的方式对待“原始”键值以防止冲突

final String PARCEL_CONFIRM="this.is.a.namespace.confirmation";

然后使用此选项与意图进行交互。

NPE会告诉您问题发生的确切位置(文件名、行号)。您可以标记获得NPE的行号吗?您正在获取启动活动的意图,然后您正在以该意图启动另一个活动,对于onActivityResult的
:交换机的逻辑不应基于reqCode,而应基于resultCode。同时发布日志。
final String PARCEL_CONFIRM="this.is.a.namespace.confirmation";