Search in sources :

Example 1 with ViewHolder

use of com.android.calendar.agenda.AgendaAdapter.ViewHolder in project Etar-Calendar by Etar-Group.

the class AgendaListView method shiftPosition.

private void shiftPosition(int offset) {
    if (DEBUG) {
        Log.v(TAG, "Shifting position " + offset);
    }
    View firstVisibleItem = getFirstVisibleView();
    if (firstVisibleItem != null) {
        Rect r = new Rect();
        firstVisibleItem.getLocalVisibleRect(r);
        // if r.top is < 0, getChildAt(0) and getFirstVisiblePosition() is
        // returning an item above the first visible item.
        int position = getPositionForView(firstVisibleItem);
        setSelectionFromTop(position + offset, r.top > 0 ? -r.top : r.top);
        if (DEBUG) {
            if (firstVisibleItem.getTag() instanceof AgendaAdapter.ViewHolder) {
                ViewHolder viewHolder = (AgendaAdapter.ViewHolder) firstVisibleItem.getTag();
                Log.v(TAG, "Shifting from " + position + " by " + offset + ". Title " + viewHolder.title.getText());
            } else if (firstVisibleItem.getTag() instanceof AgendaByDayAdapter.ViewHolder) {
                AgendaByDayAdapter.ViewHolder viewHolder = (AgendaByDayAdapter.ViewHolder) firstVisibleItem.getTag();
                Log.v(TAG, "Shifting from " + position + " by " + offset + ". Date  " + viewHolder.dateView.getText());
            } else if (firstVisibleItem instanceof TextView) {
                Log.v(TAG, "Shifting: Looking at header here. " + getSelectedItemPosition());
            }
        }
    } else if (getSelectedItemPosition() >= 0) {
        if (DEBUG) {
            Log.v(TAG, "Shifting selection from " + getSelectedItemPosition() + " by " + offset);
        }
        setSelection(getSelectedItemPosition() + offset);
    }
}
Also used : Rect(android.graphics.Rect) ViewHolder(com.android.calendar.agenda.AgendaAdapter.ViewHolder) TextView(android.widget.TextView) TextView(android.widget.TextView) View(android.view.View) AdapterView(android.widget.AdapterView) ListView(android.widget.ListView)

Aggregations

Rect (android.graphics.Rect)1 View (android.view.View)1 AdapterView (android.widget.AdapterView)1 ListView (android.widget.ListView)1 TextView (android.widget.TextView)1 ViewHolder (com.android.calendar.agenda.AgendaAdapter.ViewHolder)1