Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Установка границ для UIViewElement - Monotouch.Dialog

Автор вопроса: HatAndBeardОтветов: 1

Я пытаюсь отобразить UITextView в UIViewElement. Я хотел бы, чтобы элемент соответствовал размеру текста.

Я ожидаю, что смогу сделать что-то подобное...

 UITextView textView = new UITextView();


    textView.Font = UIFont.SystemFontOfSize(15);
       var stringSize = textView.StringSize(someArbitraryText,
                                            textView.Font,
                                            new SizeF(320, 2000),
                                            UILineBreakMode.WordWrap);

       textView.Bounds = new RectangleF(0,0,stringSize.Width, stringSize.Height);
       textView.Center = new PointF(stringSize.Width/2, stringSize.Height/2);
       textView.Editable = false;
       textView.DataDetectorTypes = UIDataDetectorType.All;
       textView.Text = someArbitraryText;
       textView.ScrollEnabled = false;


   root.Add(
      new Section("My Section:")
      {

         new UIViewElement("My Caption:", textView, false),

      });

Это приближает меня, но оставляет части моего UITextView за границей элемента. Я хотел бы, чтобы размер UIViewElement был достаточно большим, чтобы соответствовать моему пользовательскому представлению. Есть ли способ сделать это, не заходя и не изменяя источник UIViewElement?

iphone

Ответы

Ответ 1 · рейтинг 3 · Robert Kozak

В вашем элементе добавьте реализацию для IElementSizing, я считаю, что метод:

float GetHeight (UITableView tableView, NSIndexPath indexPath);

В этом методе возвращается высота элемента. т.е. TextView.Bounds.Height + 10. Я добавил + 10 для границы сверху и снизу.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы