コード例 #1
0
ファイル: DeckView.java プロジェクト: wangzhen90/Deck
  /** Resets this TaskStackView for reuse. */
  void reset() {
    // Reset the focused task
    resetFocusedTask();

    // Return all the views to the pool
    int childCount = getChildCount();
    for (int i = childCount - 1; i >= 0; i--) {
      DeckChildView<T> tv = (DeckChildView) getChildAt(i);
      mViewPool.returnViewToPool(tv);
    }

    // Mark each task view for relayout
    if (mViewPool != null) {
      Iterator<DeckChildView<T>> iter = mViewPool.poolViewIterator();
      if (iter != null) {
        while (iter.hasNext()) {
          DeckChildView tv = iter.next();
          tv.reset();
        }
      }
    }

    // Reset the stack state
    mStackViewsDirty = true;
    mStackViewsClipDirty = true;
    mAwaitingFirstLayout = true;
    mPrevAccessibilityFocusedIndex = -1;
    if (mUIDozeTrigger != null) {
      mUIDozeTrigger.stopDozing();
      mUIDozeTrigger.resetTrigger();
    }
    mStackScroller.reset();
  }
コード例 #2
0
ファイル: DeckView.java プロジェクト: wangzhen90/Deck
 @Override
 public void onDeckChildViewClicked(DeckChildView<T> dcv, T key) {
   // Cancel any doze triggers
   mUIDozeTrigger.stopDozing();
   mCallback.onItemClick(key);
 }