@Override
    public void bindView(final View view, final Context context, final Cursor cursor) {
      final ExchangeRate exchangeRate = ExchangeRatesProvider.getExchangeRate(cursor);
      final boolean isDefaultCurrency = exchangeRate.getCurrencyCode().equals(defaultCurrency);

      view.setBackgroundResource(isDefaultCurrency ? R.color.bg_list_selected : R.color.bg_list);

      final View defaultView = view.findViewById(R.id.exchange_rate_row_default);
      defaultView.setVisibility(isDefaultCurrency ? View.VISIBLE : View.INVISIBLE);

      final TextView currencyCodeView =
          (TextView) view.findViewById(R.id.exchange_rate_row_currency_code);
      currencyCodeView.setText(exchangeRate.getCurrencyCode());

      final CurrencyTextView rateView =
          (CurrencyTextView) view.findViewById(R.id.exchange_rate_row_rate);
      rateView.setFormat(Constants.LOCAL_FORMAT);
      rateView.setAmount(exchangeRate.rate.coinToFiat(rateBase));

      final CurrencyTextView walletView =
          (CurrencyTextView) view.findViewById(R.id.exchange_rate_row_balance);
      walletView.setFormat(Constants.LOCAL_FORMAT);
      if (blockchainState == null || !blockchainState.replaying) {
        walletView.setAmount(exchangeRate.rate.coinToFiat(balance));
        walletView.setStrikeThru(Constants.TEST);
      } else {
        walletView.setText("n/a");
        walletView.setStrikeThru(false);
      }
      walletView.setTextColor(getResources().getColor(R.color.fg_less_significant));
    }