migueldeicaza / MonoTouch.Dialog

Tools to simplify creating dialogs with the user using MonoTouch
MIT License
430 stars 211 forks source link

StyledMultilineElement shows gaps with large text values and disappears altogether with really large values. #225

Open GavinSutherland opened 10 years ago

GavinSutherland commented 10 years ago

Hi,

If the text being shown in a StyledMultilineElement is of any great length then the Caption and the text is being shown further down (image attached). This problem gets worse if your text string is really big, say about 20,000 characters, because you get a huge scrolling cell with no text in it at all. Simplified version of the code I'm using in my UITapGestureRecognizer:

RootElement root = new RootElement("Title") { UnevenRows = true };
var section = new Section("Section Heading");
// Get a value string that is approx 1,000 chars long
var value = GetLongString();

var element = new StyledMultilineElement("Caption", value, UITableViewCellStyle.Subtitle)
{
    LineBreakMode = UILineBreakMode.WordWrap,
    Font = UIFont.FromName("HelveticaNeue", 16f),
    SubtitleFont = UIFont.FromName("HelveticaNeue", 16f)
};
section.Add(element);
root.Add(new List<Section>() { section });

var viewController = new DialogViewController(root);
var navbarController = new UINavigationController(viewController);

_contactPopup = new UIPopoverController(navbarController);
_contactPopup.PresentFromRect(cell.Bounds, cell, UIPopoverArrowDirection.Any, true);

multilinegap