private static void AddLinks(MatchOptions linkifyMask, BetterLinkMovementMethod movementMethod, TextView textView) { textView.MovementMethod = movementMethod; if (linkifyMask != LinkifyNone) { Android.Text.Util.Linkify.AddLinks(textView, linkifyMask); } }
/** * Get a static instance of BetterLinkMovementMethod. Do note that registering a click listener on the returned * instance is not supported because it will potentially be shared on multiple TextViews. */ public static BetterLinkMovementMethod GetInstance() { if (_singleInstance == null) { _singleInstance = new BetterLinkMovementMethod(); } return(_singleInstance); }
// ======== PUBLIC APIs END ======== // private static void RAddLinks(MatchOptions linkifyMask, ViewGroup viewGroup, BetterLinkMovementMethod movementMethod) { for (var i = 0; i < viewGroup.ChildCount; i++) { var child = viewGroup.GetChildAt(i); if (child is ViewGroup) { // Recursively find child TextViews. RAddLinks(linkifyMask, child as ViewGroup, movementMethod); } else if (child is TextView) { var textView = child as TextView; AddLinks(linkifyMask, movementMethod, textView); } } }