Intereting Posts
Как я могу отображать живые обои пользователя в качестве фона в моем приложении? Фильтр Intent для запуска и отправки активности Эффект эффекта щелчка элемента управления Recyclerview Сбой официальных примеров Facebook (GraphApiSample) Выход из системы Android Android SDK Как выбрать оптимальный размер изображения, чтобы он не превышал бюджет VM? Проверка URL-адресов работает нормально, но поддерживает соединение и ограничивает дальнейшие запросы Как получить requestCode от ожидающего намерения во время тревоги в android R отсутствует после создания проекта Android из существующего источника Как удалить кнопку ExpandableListView? Superpowered SDK: реализация SuperpoweredRecorder.h и настройка путей записи Поместите объект в сообщение Обработчик Как определить использование HDMI на Samsung Galaxy S II Отсутствующие языки в TTS-андроиде Обнаружение длительных кликов на пользовательском представлении?

Как использовать 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»);

Спасибо!!

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

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

  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() .