Intereting Posts
Как получить представление из координат X / Y Есть ли способ обрезать большое изображение на андроиде без загрузки в память? Новый рендеринг gms.maps.MapView немного отстает в ListView? Как проверить, равны ли два объекта прокси-сервера Android? EditText vs TextView Как я могу изменить язык моего приложения Как создать простой проект GUI (Hello world) для Android на Clojure? Кто-нибудь использовал рамки телефонной связи и как они оценили ее? Как запустить локальное сетевое подключение программно через точку доступа Wi-Fi на Android? Соглашение об именах с сериализацией / десериализацией Firebase? Android отправляет файл / данные из приложения через Bluetooth на ПК / принтер / сканер / другое устройство Можно ли программно определить режим связи USB? Android: расшифровать текст RSA с помощью открытого ключа, хранящегося в файле Ошибка Android в режиме слайд-активности Невозможно использовать getSystemService («usagestats») Android Studio

Как использовать onActivityResult (..), если действие вызывается из меню

Это моя проблема:

class main extends menuActivity{ // .. // public void onActivityResult(int requestCode, int resultCode, Intent data) { if (resultCode == 0) camera_barcode = INTENT.getStringExtra("SCAN_RESULT"); } } } 

INTENT создается в классе menuActivity:

 public class menuActivity extends Activity { public INTENT; @Override public boolean onCreateOptionsMenu(Menu menu) { } @Override public boolean onOptionsItemSelected(MenuItem item) { // INTENT = new Intent("com.google.zxing.client.android.SCAN"); INTENT.putExtra("SCAN_MODE", "QR_CODE_MODE"); startActivityForResult(INTENT, 0); // } } 

Проблема в том, что String camera_barcode имеет значение null, непонятно почему.

Q: Если вместо QR_CODE_MODE я хочу сканировать 1d штрих-коды? R: cameraScan.putExtra («SCAN_MODE», «PRODUCT_MODE»);

Спасибо!!

Завершите действие, которое вы начинаете с результата.

  Bundle b = new Bundle(); b.putString(key, value); Intent i = getIntent(); //gets the intent that called this intent i.putExtras(b); setResult(Activity.RESULT_OK, i); finish(); 

Неважно, где вы создаете намерение. Если вы использовали метод startActivityForResult() , то вы получите результаты в функции onActivityResult() .