| ### Typical use: highlight a view |
| |
| <!--<div class="material-code-render" markdown="1">--> |
| #### Swift |
| ```swift |
| let completion = {(accepted: Bool) in |
| // perform analytics here |
| // and record whether the highlight was accepted |
| } |
| |
| let highlightController = MDCFeatureHighlightViewController(highlightedView: viewToHighlight, |
| completion: completion) |
| highlightController.titleText = "Just how you want it" |
| highlightController.bodyText = "Tap the menu button to switch accounts, change settings & more." |
| highlightController.outerHighlightColor = |
| UIColor.blue.withAlphaComponent(kMDCFeatureHighlightOuterHighlightAlpha) |
| present(highlightController, animated: true, completion:nil) |
| ``` |
| |
| #### Objective-C |
| ```objc |
| MDCFeatureHighlightCompletion completion = ^(BOOL accepted) { |
| // perform analytics here |
| // and record whether the highlight was accepted |
| }; |
| |
| MDCFeatureHighlightViewController *highlightController = |
| [[MDCFeatureHighlightViewController alloc] initWithHighlightedView:viewToHighlight |
| completion:completion]; |
| highlightController.titleText = @"Just how you want it"; |
| highlightController.bodyText = @"Tap the menu button to switch accounts, change settings & more."; |
| highlightController.outerHighlightColor = |
| [[UIColor blueColor] colorWithAlphaComponent:kMDCFeatureHighlightOuterHighlightAlpha]; |
| [self presentViewController:highlightController animated:YES completion:nil]; |
| ``` |
| <!--</div>--> |
| |
| Often when highlighting a view you will want to display a different view to the one you are highlighting. For example, flipping the primary and secondary colors in the presented version. |
| |
| <!--<div class="material-code-render" markdown="1">--> |
| #### Swift |
| ```swift |
| let displayedButton = UIButton(type: .system) |
| displayedButton.setTitle(highlightedButton.title(for: .normal), for: .normal) |
| displayedButton.setTitleColor(highlightedButton.backgroundColor, for: .normal) |
| displayedButton.backgroundColor = highlightedButton.titleColor(for: .normal) |
| |
| let highlightController = MDCFeatureHighlightViewController(highlightedView: highlightedButton, andShow: displayedButton, completion: completion) |
| ``` |
| |
| #### Objective-C |
| ```objc |
| UIButton *displayedButton = [UIButton buttonWithType:UIButtonTypeSystem]; |
| [displayedButton setTitle:[highlightedButton titleForState:UIControlStateNormal] |
| forState:UIControlStateNormal]; |
| [displayedButton setTitleColor:highlightedButton.backgroundColor forState:UIControlStateNormal]; |
| displayedButton.backgroundColor = [highlightedButton titleColorForState:UIControlStateNormal]; |
| MDCFeatureHighlightViewController *highlightController = |
| [[MDCFeatureHighlightViewController alloc] initWithHighlightedView:highlightedButton |
| andShowView:displayedButton |
| completion:completion]; |
| ``` |
| <!--</div>--> |