Возвращаемое значение Попробуйте catch? - PullRequest
0 голосов
/ 23 октября 2019

Я пытаюсь сделать set Text в onBindViewHolder, я уверен, что я создаю его без ошибок, потому что, если я устанавливаю фиктивные данные setText, он устанавливает setText в представление переработчика.

Trying on try catch but don't do any set text

Но если я создаю try catch, это ничего не меняет. Помогите мне.


try {
            Transaksi transaksi = arrayTransaksi.get(position);
            Calendar calendar = Calendar.getInstance();
            Date date1=new SimpleDateFormat("dd/MM/yyyy").parse(transaksi.getTanggal_transaksi());
            long milis = date1.getTime();
            if (milis == calendar.get(Calendar.DATE)){
                holder.textHariTransaksi.setText("Today");
                holder.textTanggal.setText(transaksi.getTanggal_transaksi());
                holder.textHarga.setText(String.valueOf(transaksi.getHarga_transaksi()));
            }else if(calendar.get(Calendar.DATE) - milis == 1){
                holder.textHariTransaksi.setText("Yesterday");
                holder.textTanggal.setText(transaksi.getTanggal_transaksi());
                holder.textHarga.setText(String.valueOf(transaksi.getHarga_transaksi()));
            }else{
                SimpleDateFormat dateFormat = new SimpleDateFormat("l");
                holder.textHariTransaksi.setText(dateFormat.format(date1));
                holder.textTanggal.setText(transaksi.getTanggal_transaksi());
                holder.textHarga.setText(String.valueOf(transaksi.getHarga_transaksi()));
            }

        } catch (ParseException e) {
            e.printStackTrace();
        }

, если я не использую try catch, он говорит: «error: незарегистрированное исключение ParseException; должно быть перехвачено или объявлено как выброшенное» *

1 Ответ

0 голосов
/ 23 октября 2019

Если вы пытаетесь установить текст, вам нужно получить доступ к функции из потока пользовательского интерфейса, для этого вам нужно вызвать функцию runOnUiThread.

Activity.runOnUiThread(() =>{ call setText here })

Я сейчас использую мобильный телефонВот почему мой ответ краткий.

Редактировать: Также проверьте, являются ли все данные, которые вы пытаетесь установить как текст, фактической строкой.

...