private void onDrawOver(Canvas c, RecyclerView parent, SwipeOpenViewHolder selected, List<RecoverAnimation> recoverAnimationList, int actionState, float dX, float dY) { final int recoverAnimSize = recoverAnimationList.size(); boolean hasRunningAnimation = false; for (int i = recoverAnimSize - 1; i >= 0; i--) { final RecoverAnimation anim = recoverAnimationList.get(i); if (anim.ended) { recoverAnimationList.remove(i); } else { hasRunningAnimation = true; } } if (hasRunningAnimation) { parent.invalidate(); } }
private void noTickInvalidate(){ mNoTickRlv.requestLayout(); mNoTickRlv.invalidate(); }
private void tickInvalidate(){ mTickRlv.requestLayout(); mTickRlv.invalidate(); }
@Override public void handleMessage(Message msg) { super.handleMessage(msg); if (mRecyclerView == null || mRecyclerView.getAdapter() == null) { return; } int lastItemPosition = mRecyclerView.getAdapter().getItemCount() - 1; if (mPtrrvUtil.findLastVisibleItemPosition(mRecyclerView.getLayoutManager()) == lastItemPosition) { //when the item is visiable do this method // View view = mRecyclerView.getLayoutManager().findViewByPosition(lastItemPosition); // mInvilidateRect.set(0, 0, view.getRight() - view.getLeft(), view.getBottom() - view.getTop()); mRecyclerView.invalidate(); } } };
@Override public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) { if(!selected.isEmpty()){ return; } if(!(viewHolder instanceof FileViewHolder)){ return; } FileHandle handle = (FileHandle) ((FileViewHolder) viewHolder).itemView.getTag(); System.out.println(" SWIPED "+handle.file.getAbsolutePath()); if("DELETE".equals(prefs.getString("swipeAction", "DELETE"))) { deleteFile(handle.file); } else { if (viewArchive) { moveTo(handle.file, crosswordsFolder); } else { moveTo(handle.file, archiveFolder); } } currentAdapter.onItemDismiss(viewHolder.getAdapterPosition()); puzzleList.invalidate(); } });
private void forceRefresh(boolean save) { mAdapter.first_run = languageItemList.size(); recyclerView.invalidate(); recyclerView.refreshDrawableState(); mAdapter.notifyDataSetChanged(); }
private void forceRefresh(boolean save) { mAdapter.first_run = languageItemList.size(); recyclerView.invalidate(); recyclerView.refreshDrawableState(); mAdapter.notifyDataSetChanged(); }
private void switchDivider(int type) { if (mCurrentDividerType == type) return; RecyclerView.ItemDecoration current = getDivider(mCurrentDividerType); mRecyclerView.removeItemDecoration(current); mRecyclerView.addItemDecoration(getDivider(type)); mRecyclerView.invalidate(); // need to invalidate RecyclerView to make the change work. mCurrentDividerType = type; }
private void startInitialActivityOrFinishLoading() { if (!crosswordsFolder.exists()) { this.downloadTen(); Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("file:///android_asset/welcome.html"), this, HTMLActivity.class); this.startActivity(i); return; } else if (prefs.getBoolean("release_" + BuildConfig.VERSION_NAME, true)) { prefs.edit() .putBoolean("release_"+BuildConfig.VERSION_NAME, false) .apply(); Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("file:///android_asset/release.html"), this, HTMLActivity.class); this.startActivity(i); return; } render(); this.checkDownload(); puzzleList.invalidate(); }
@Override public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) { if(menuItem.getTitle().equals("Delete")){ for(FileHandle handle : selected){ deleteFile(handle.file); } puzzleList.invalidate(); actionMode.finish(); } else if(menuItem.getTitle().equals("Archive")){ for(FileHandle handle : selected){ moveTo(handle.file, archiveFolder); } puzzleList.invalidate(); actionMode.finish(); } else if(menuItem.getTitle().equals("Un-archive")){ for(FileHandle handle : selected){ moveTo(handle.file, crosswordsFolder); } puzzleList.invalidate(); actionMode.finish(); } return true; }
SwipeOpenItemTouchHelper.this.recyclerView.invalidate();
private void forceRefresh(boolean save) { shuffleFit(); if (save) saveData(false); mAdapter.calcTopScale(); mAdapter.first_run = profileItemList.size(); recyclerView.invalidate(); recyclerView.refreshDrawableState(); mAdapter.notifyDataSetChanged(); }
private void forceRefresh(boolean save) { shuffleFit(); if (save) saveData(false); mAdapter.calcTopScale(); mAdapter.first_run = profileItemList.size(); recyclerView.invalidate(); recyclerView.refreshDrawableState(); mAdapter.notifyDataSetChanged(); }
/** * Closes the given SwipeOpenViewHolder at the given position if there is one. * If the position is not currently attached to the RecyclerView (e.g. off-screen), then * the opened position will just be removed and the holder will appear in a closed position * when it is next created/bound. * * @param position the position to close */ public void closeOpenPosition(final int position) { if (recyclerView == null) { return; } RecyclerView.ViewHolder holder = recyclerView.findViewHolderForAdapterPosition(position); if (holder instanceof SwipeOpenViewHolder) { // check that the view holder is attached to a parent if (((SwipeOpenViewHolder) holder).getViewHolder().itemView.getParent() != null) { // end any current animations for the view holder endRecoverAnimation((SwipeOpenViewHolder) holder); closeOpenHolder((SwipeOpenViewHolder) holder); recyclerView.invalidate(); } } // remove the position if we have not already openedPositions.remove(position); }
private void openPosition(final int position, final SavedOpenState direction) { if (recyclerView == null) { return; } // attempt to close any open positions if (closeOnAction) { closeAllOpenPositions(); } RecyclerView.ViewHolder holder = recyclerView.findViewHolderForAdapterPosition(position); if (holder instanceof SwipeOpenViewHolder) { // check that the view holder is attached to a parent if (((SwipeOpenViewHolder) holder).getViewHolder().itemView.getParent() != null) { // end any current animations for the view holder endRecoverAnimation((SwipeOpenViewHolder) holder); openHolder((SwipeOpenViewHolder) holder, direction); recyclerView.invalidate(); } } // add open position to our saved positions openedPositions.put(position, direction); }
mRecyclerView.invalidate();
recyclerView.invalidate();