Skip to content
This repository was archived by the owner on Feb 2, 2023. It is now read-only.

Conversation

@hannahmbanana
Copy link
Contributor

Description:

  • This ASRangeController debug tool adds a semi-transparent subview to the sharedApplication keyWindow that visualizes the ASRangeTuningParameters for each ASLayoutRangeType for each visible (on-screen) instance of ASRangeController.
  • The instances of ASRangeController are represented as bars with Green = Visible, Yellow = Display, and Red = FetchData.
  • As you scroll around within ASTable/CollectionViews you can see the parameters relative to each.
  • White arrows on the L and R sides of the individual RangeController bar views indicate the scrolling direction so that you can determine the leading / trailing tuning parameters (especially useful for vertically-oriented rangeControllers whose leading edge might be unclear within the horizontally-oriented bar view).
  • The white debug label above the RangeController bar displays the RangeController dataSource’s class name to differentiate between nested views.

To use, message ASRangeController in the AppDelegate:
[ASRangeController setShouldShowRangeDebugOverlay:YES];

Future expansion ideas:

  • improve code performance
  • allow taps to pass through the overlay
  • configure the debug label to display more useful information - perhaps the actual values of the tuning parameters?
  • rather than displaying the ideal tuning parameters, show the actual achieved ones
  • rather than showing the tuning parameters in a bar representation, show the actual nodes in each state

Screenshot & short demo:

https://drive.google.com/file/d/0B1BArZ05bNhzVy1jSW9FeEVXUjg/view?usp=sharing

screen shot 2016-03-16 at 8 15 54 pm

@hannahmbanana
Copy link
Contributor Author

Documentation for this debug feature in Issue #1435

@hannahmbanana
Copy link
Contributor Author

Closing this PR & adding it as an issue it to Ship (ASDK's new feature tracking software) until I have more time to clean it up.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.