SQLite, DisplayListCanvas запускается на несвязанном узле RenderNode (без mOwningView) - PullRequest
0 голосов
/ 08 июня 2018

Я пытаюсь заполнить мой RecyclerViewAdapter, используя имя таблицы из базы данных sqlite, все работает абсолютно без ошибок, с задержкой при открытии действия, содержащего этот адаптер.с этим Logcat:

E/Path 1: /data/data/com.shahzadakram67.soloacademy/databases/
W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView)

E / Path 1: /data/data/com.shahzadakram67.soloacademy/databases/

Эта первая строка повторяется столько разкак количество таблиц в моей базе данных.

Код адаптера:

@Override
public void onBindViewHolder(MyViewHolder holder, final int position) {

    //code to count the rows in each table
    LocalDatabaseHelper myDbHelper = new LocalDatabaseHelper(mContext);
    Cursor c = myDbHelper.getAllData(mData.get(position).getTableName());
    holder.topicName.setText(mData.get(position).getTableName());
    holder.topicDetails.setText(c.getCount());

}

Моя личная оценка состоит в том, что я добавил код для подсчета количества строк во всех таблицахделает его запаздывающим, потому что раньше он работал нормально, у меня огромное количество таблиц, невозможно посчитать строки для всех таблиц одну за другой и изменить их в разное время. Как сделать это быстро, как раньше?

1 Ответ

0 голосов
/ 09 июня 2018

Я решил свою проблему с помощью SharedPrefferences.

    SharedPreferences pref = mContext.getSharedPreferences("prefName", MODE_PRIVATE);
    SharedPreferences.Editor editor = pref.edit();
    Integer recordCount = pref.getInt(mData.get(position).getTableName(), 0);

    if (quizCount < 1){
        for(int i = 0; i < mData.size(); i++){
            Cursor c = myDbHelper.getAllData(mData.get(i).getTableName());
            editor.putInt(mData.get(i).getTableName(), c.getCount());
            editor.apply();
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...