кнопка startActivityForResult () вылетает - PullRequest
0 голосов
/ 14 апреля 2019

Я пытаюсь связать 2 действия (MainActivity и Taskcreation) с помощью кнопки.Я ожидаю результата от второго действия, поэтому я использую startActivityForResult (), но он продолжает падать при запуске основного действия.

Основное действие работает правильно без кнопки и ссылки,Каждый форум, который я посещаю о startActivityForResult, заявляет, что проблема в том, чтобы поместить MainActivity.this (контекст) вместо этого, но это то, чем я занимаюсь с самого начала.Очевидно, что это не работает только с этим.

Создание кнопки MainActivity.java / ссылка:

private static final int REQUEST_ADD = 1;


    Button AjoutTache = (Button) findViewById(R.id.AjoutTache);
    AjoutTache.setOnClickListener( new OnClickListener(){
        @Override
        public void onClick(View v){
            Intent intent = new Intent(MainActivity.this, Taskcreation.class);
            startActivityForResult(intent, REQUEST_ADD);
            //startActivityForResult(intent, 1);
        }
    });

Taskcreation.java результаты:

  buttonOk.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Intent result = new Intent();
            setResult(RESULT_OK, result);
            result.putExtra("nom", nomTache.getText().toString());
            result.putExtra("statut", statut.isChecked());
            result.putExtra("priorite", ((RadioButton) findViewById(priorite.getCheckedRadioButtonId())).getText());
            result.putExtra("deadline", deadline.getText().toString());
            finish();
        }
    });

MainActivity.java onActivityResult:

protected void onActivityResult(int requestCode, int resultCode, Intent data){
    if (requestCode == REQUEST_ADD) {
        if (resultCode == RESULT_OK) {
            // Create Task
            Tache tache = new Tache();
            tache.setNom(data.getStringExtra("nom"));
            tache.setStatut(data.getBooleanExtra("statut", false));
            tache.setPriorite(data.getStringExtra("priorite"));
            tache.setDeadline(data.getStringExtra("deadline"));
            //mesTaches.add(tache);
            // Toast
            Toast.makeText(this, "Task added:\n" + tache.toString(), Toast.LENGTH_LONG).show();
            // Update listview
        }
        else if (resultCode == RESULT_CANCELED) {
            Log.d("Main", "canceled");
        }
    }
}

Просто происходит сбой при запуске приложения на виртуальном устройстве.

Вот самая последняя трассировка стека:

2019-04-14 17: 44: 13,694 6009-12813 /?E / ctxmgr: [SyncServerInterestRecordsOperation] Сбой WriteInterestRecord: состояние сети = -1 [CONTEXT service_id = 47]

com.android.volley.VolleyError: Unable to obtain auth token - is the device online?

    at eme.a(:com.google.android.gms@16089040@16.0.89 (100700-239467275):31)

    at eha.run(:com.google.android.gms@16089040@16.0.89 (100700-239467275):2)

    at egy.handleMessage(:com.google.android.gms@16089040@16.0.89 (100700-239467275):3)

    at rlu.run(:com.google.android.gms@16089040@16.0.89 (100700-239467275):8)

    at rmf.b(:com.google.android.gms@16089040@16.0.89 (100700-239467275):32)

    at rmf.run(:com.google.android.gms@16089040@16.0.89 (100700-239467275):21)

    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)

    at rsc.run(Unknown Source:7)

    at java.lang.Thread.run(Thread.java:764)

1 Ответ

0 голосов
/ 14 апреля 2019

########## intent.settype ("");

use this
public void onClick(View v){
            Intent intent = new Intent(MainActivity.this, Taskcreation.class);

            intent.settype("");

            startActivityForResult(intent, REQUEST_ADD);
            //startActivityForResult(intent, 1);
        }
    }); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...