Breaker ACT
07/10/2023, 8:46 AMrequestRowsLayout
whenever a new row is added.
TableLayout.java
public void addView(View child) {
super.addView(child);
requestRowsLayout();
}
public void requestLayout() {
if (mInitialized) {
int count = getChildCount();
for (int i = 0; i < count; i++) {
getChildAt(i).forceLayout();
}
}
super.requestLayout();
}
I've tried to use reflection to set mInitialized
= false.
But cannot found the variable via reflection. Can you give me advise. ?Chrimaeon
07/10/2023, 8:58 AMBreaker ACT
07/10/2023, 8:59 AMChrimaeon
07/10/2023, 9:00 AMBreaker ACT
07/10/2023, 9:01 AMChrimaeon
07/10/2023, 9:03 AMChrimaeon
07/10/2023, 9:05 AMChrimaeon
07/10/2023, 9:06 AMBreaker ACT
07/10/2023, 9:08 AMTableLayout::class.declaredMemberProperties
we gonna get all the declare fields of a class right ?
But what I'm getting is empty list. Might be the sdk not the same, but always variable existedChrimaeon
07/10/2023, 9:27 AMChrimaeon
07/10/2023, 9:29 AMChrimaeon
07/10/2023, 9:29 AMvar android.widget.TableLayout.mCollapsedColumns: android.util.SparseBooleanArray!, var android.widget.TableLayout.mInitialized: kotlin.Boolean, var android.widget.TableLayout.mMaxWidths: kotlin.IntArray!, var android.widget.TableLayout.mPassThroughListener: android.widget.TableLayout.PassThroughHierarchyChangeListener!, var android.widget.TableLayout.mShrinkAllColumns: kotlin.Boolean, var android.widget.TableLayout.mShrinkableColumns: android.util.SparseBooleanArray!, var android.widget.TableLayout.mStretchAllColumns: kotlin.Boolean, var android.widget.TableLayout.mStretchableColumns: android.util.SparseBooleanArray!
Breaker ACT
07/10/2023, 9:32 AMBreaker ACT
07/10/2023, 9:33 AMChrimaeon
07/10/2023, 9:35 AMBreaker ACT
07/10/2023, 9:36 AM