добавлена ​​проверка текста эспрессо в заголовке представления рециркулятора - PullRequest
0 голосов
/ 06 января 2019

, поэтому у меня есть вид рециркулятора, и мне нужно было добавить в него элементы в виде разделов или заголовков. Я достигаю этого с помощью метода ItemDecorations ViewDecorations onDrawOver, поэтому записываю его на холст и вставляю вот так

 private void drawHeader(Canvas c, View child, View headerView) {
    c.save();
    if (sticky) {
        c.translate(0, Math.max(0, child.getTop() - headerView.getHeight()));
    } else {
        c.translate(0, child.getTop() - headerView.getHeight());
    }
    headerView.draw(c);
    c.restore();
}

@Override
public void onDrawOver(Canvas c, RecyclerView parent, RecyclerView.State state) {
    super.onDrawOver(c, parent, state);

    if (headerView == null) {
        headerView = inflateHeaderView(parent);
        header = (TextView) headerView.findViewById(R.id.title);
        fixLayoutSize(headerView, parent);
    }

    CharSequence previousHeader = "";
    for (int i = 0; i < parent.getChildCount(); i++) {
        View child = parent.getChildAt(i);
        final int position = parent.getChildAdapterPosition(child);

        String title = sectionCallback.getSectionHeader(position);
        header.setText(title);
        if (!previousHeader.equals(title) || sectionCallback.isSection(position)) {
            drawHeader(c, child, headerView);
            previousHeader = title;
        }
    }
}

private View inflateHeaderView(RecyclerView parent) {
    return LayoutInflater.from(parent.getContext())
            .inflate(R.layout.request_sticky_header, parent, false);
}

Я сейчас пишу тесты для этого, но он вылетает: «Не найдено ни одного представления в иерархии, совпадающего с текстом:» Я не вижу текст в иерархии, и мне интересно, если это так, потому что макет обращается к холст, кто-нибудь может помочь мне проверить, было ли добавлено представление?

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

...