private void updateView() {
    if (!isResumed()) return;

    final String bitcoinRequest = determineBitcoinRequestStr(true);
    final byte[] paymentRequest = determinePaymentRequest(true);

    // update qr-code
    final int size = (int) (256 * getResources().getDisplayMetrics().density);
    final String qrContent;
    if (config.getQrPaymentRequestEnabled())
      qrContent = "RDDCOIN:-" + Qr.encodeBinary(paymentRequest);
    else qrContent = bitcoinRequest;
    qrCodeBitmap = Qr.bitmap(qrContent, size);
    qrView.setImageBitmap(qrCodeBitmap);

    // update nfc ndef message
    final boolean nfcSuccess =
        Nfc.publishMimeObject(
            nfcManager,
            activity,
            com.google.reddcoin.protocols.payments.PaymentProtocol.MIMETYPE_PAYMENTREQUEST,
            paymentRequest,
            false);

    // update initiate request message
    final SpannableStringBuilder initiateText =
        new SpannableStringBuilder(getString(R.string.request_coins_fragment_initiate_request_qr));
    if (nfcSuccess)
      initiateText
          .append(' ')
          .append(getString(R.string.request_coins_fragment_initiate_request_nfc));
    initiateRequestView.setText(initiateText);

    // focus linking
    final int activeAmountViewId = amountCalculatorLink.activeTextView().getId();
    acceptBluetoothPaymentView.setNextFocusUpId(activeAmountViewId);
  }