@@ -73,22 +73,20 @@ void unbindLayout() {
7373 void measureChild (int width ,int height ){
7474 if (getItemCount () > 0 ){
7575 int size = layout .getRealStackSize ();
76- if (originX .isEmpty ()) {
77- float stackSpaces = 0 ;
78- everyHeight = height - layout .getPaddingTop () - layout .getPaddingBottom ();
79- originX .add (layout .stackEdge );
80- int padX = layout .stackPadX ;
81- if (padX *(size -1 ) > layout .stackSpace ){
82- padX = 0 ;
83- }
84- for (int i = 1 ; i < size ; i ++) {
85- int stackSpace = (int )((layout .stackSpace -padX *(size -1 -i ))*Math .pow (layout .stackZoomX ,(size -1 -i )));
86- stackSpaces += stackSpace ;
87- originX .add (originX .get (i - 1 ) + stackSpace );
88- }
89- everyWidth = width - layout .getPaddingLeft () - layout .getPaddingRight () - (int )stackSpaces - 2 * layout .stackEdge ;
90- mMaxDistance = everyWidth / 3 ;
76+ float stackSpaces = 0 ;
77+ everyHeight = height - layout .getPaddingTop () - layout .getPaddingBottom ();
78+ originX .add (layout .stackEdge );
79+ int padX = layout .stackPadX ;
80+ if (padX *(size -1 ) > layout .stackSpace ){
81+ padX = 0 ;
82+ }
83+ for (int i = 1 ; i < size ; i ++) {
84+ int stackSpace = (int )((layout .stackSpace -padX *(size -1 -i ))*Math .pow (layout .stackZoomX ,(size -1 -i )));
85+ stackSpaces += stackSpace ;
86+ originX .add (originX .get (i - 1 ) + stackSpace );
9187 }
88+ everyWidth = width - layout .getPaddingLeft () - layout .getPaddingRight () - (int )stackSpaces - 2 * layout .stackEdge ;
89+ mMaxDistance = everyWidth / 3 ;
9290 int childSize = layout .getChildCount ();
9391 if (childSize <= 0 ) {
9492 needRelayout = true ;
@@ -154,7 +152,8 @@ void onItemClicked(){
154152
155153 void notifyDataChanged (){
156154 if (layout != null ){
157- layout .requestLayout ();
155+ layout .removeAllViews ();
156+ weakViews .clear ();
158157 }
159158 }
160159
@@ -523,8 +522,6 @@ boolean filterClick(){
523522
524523 static void log (String msg ){
525524 StackTraceElement element = Thread .currentThread ().getStackTrace ()[3 ];
526- Log .e ("StackLayout" , String .format ("%1$s:%2$s(%3$s):%4$s" , element .getClassName (),
527- element .getMethodName (), element .getLineNumber (), msg ));
528-
525+ Log .e ("StackLayout" , String .format ("%1$s:%2$s(%3$s):%4$s" , element .getClassName (),element .getMethodName (), element .getLineNumber (), msg ));
529526 }
530527}
0 commit comments