Preencher widgets de um cursor em onLoadFinished ()

Eu quero saber como usar oCursorLoader para preencher os widgets em uma tela. Todos os exemplos on-line são apenas para usar um adaptador e isso funciona muito bem. O que eu preciso é uma maneira confiável de atualizar as visualizações na minha tela a partir de um Cursor e no thread da interface do usuário e sem, por vezes, travar por causa deStaleDataException ou o cursor sendo desativado de repente. Esta é a minha abordagem atual, mas ainda recebo alguns relatórios de erros dos usuários.

<code>@Override
    public Loader<Cursor> onCreateLoader(int id, Bundle arg1) {
        CursorLoader loader = null;

        switch (id) {
            case LOADER_ID_DATA:
                loader = new CursorLoader(...);
                break;
        }

        return loader;
    }

    @Override
    public void onLoadFinished(Loader<Cursor> loader, final Cursor cursor) {
        handler.post(new Runnable() {

            @Override
            public void run() {
                if (getActivity() == null)
                    return;

                updateView(cursor);
            }
        });
    }

    @Override
    public void onLoaderReset(Loader<Cursor> arg0) {
    }
</code>

Uma solução seria recuperar todos os campos de cursor diretamente dentro de onLoadFinished e passá-los para o manipulador para preencher os widgets no thread da interface do usuário. Mas isso é feio porque posso ter muitos valores no cursor. Eu adoraria encontrar uma maneira confiável de lidar com tudo isso.

questionAnswers(1)

yourAnswerToTheQuestion