private void destroyView(View rootView) { try { if (rootView instanceof ViewGroup) { ViewGroup cViewGroup = ((ViewGroup) rootView); for (int index = 0; index < cViewGroup.getChildCount(); index++) { destroyView(cViewGroup.getChildAt(index)); } cViewGroup.removeViews(0, ((ViewGroup) rootView).getChildCount()); // Ensure that the viewgroup's status to be normal WXReflectionUtils.setValue(rootView, "mChildrenCount", 0); } if(rootView instanceof Destroyable){ ((Destroyable)rootView).destroy(); } } catch (Exception e) { WXLogUtils.e("WXSDKInstance destroyView Exception: ", e); } }
private void removeViews(int positionStart, int itemCount) { viewGroup.removeViews(positionStart, itemCount); }
@Override public void onItemRangeRemoved(final ObservableList<T> sender, final int positionStart, final int itemCount) { final ItemChangeListener<T> listener = weakListener.get(); if (listener != null) { listener.container.removeViews(positionStart, itemCount); } else { sender.removeOnListChangedCallback(this); } } }
@Override public void removeViews(int start, int count) { super.removeViews(start, count); updateAngle(); }
@Override public void run() { removeTextChangedListenerFromPhoneInputField(); // Do not remove the "* indicates required field" label at the // bottom. dataView.removeViews(0, dataView.getChildCount() - 1); prepareEditor(); if (mObserverForTest != null) { mObserverForTest.onPaymentRequestReadyToEdit(); } } });
@Override public void onItemRangeMoved(final ObservableList<T> sender, final int fromPosition, final int toPosition, final int itemCount) { final ItemChangeListener<T> listener = weakListener.get(); if (listener != null) { final View[] views = new View[itemCount]; for (int i = 0; i < itemCount; ++i) views[i] = listener.container.getChildAt(fromPosition + i); listener.container.removeViews(fromPosition, itemCount); for (int i = 0; i < itemCount; ++i) listener.container.addView(views[i], toPosition + i); } else { sender.removeOnListChangedCallback(this); } }
private void onChangeArraySize( Context context, int newSize ) { if ( mCurArraySize < newSize ) { // add new item views // first child is size spinner! String typeName = mTypeName.endsWith("[]") ? mTypeName.substring(0, mTypeName.length() - 2) : mTypeName; for ( int arrayIndex = mCurArraySize ; arrayIndex < newSize; arrayIndex++ ) { View itemView = getDynView( typeName, mContainer ); if ( itemView != null ){ setItemViewLabel( itemView, generateLabel( arrayIndex )); mContainer.addView( itemView); } else { // TODO add error textview } } } else if ( mCurArraySize > newSize ) { // remove item views // first child is size spinner! mContainer.removeViews( newSize + 1 , mCurArraySize - newSize ); } mCurArraySize = newSize; }
viewGroup.removeViews(i, viewGroup.getChildCount() - i);
parentView.removeViews(0, parentView.getChildCount() - 1); if (isAddStatusView) { if (mStatusView == null) {