Я знаю, что есть несколько вопросов относительно размещения изображений и текста в кнопках, но я все еще не могу заставить его работать. Я хочу, чтобы заголовок отображался под изображением. Если изображение отсутствует, заголовок отображает то, что я ожидаю. Однако, если есть изображение, заголовок не отображается.UIButton с изображением и текстом
Код вставляется ниже. Завтра я могу попробовать подклассифицировать UIButton и настроить подзоны, но этот должен работать. Я думаю. Вы видите, почему это не так?
Заранее благодарен!
private static float h = 200.0f;
private static float w = 200.0f;
private static float padding = 10.0f;
private static float textheight = 20f;
for (int i=0; i<numPlants; i++)
{
var button = UIButton.FromType (UIButtonType.RoundedRect);
button.Frame = new RectangleF (padding * (i + 1) + (i * w),
padding, w, (h + textheight + 2));
UIImage img = _group.Plants[i].GetImage();
if (img != null)
{
button.SetImage(img, UIControlState.Normal);
button.ImageEdgeInsets = new UIEdgeInsets(0.0f, 0.0f, (textheight + 20), 0.0f);
}
button.TitleEdgeInsets = new UIEdgeInsets((h+2), 0.0f, 0.0f, 0.0f);
button.SetTitleColor(UIColor.Black, UIControlState.Normal);
button.SetTitle(_group.Plants[i].Pltnme, UIControlState.Normal);
plantScrollView.AddSubview (button);
Plant plt = _group.Plants[i];
button.TouchUpInside += (sender, e) => {
_navController.PushViewController(new SecondViewController(plt), true);
};
}
Спасибо за идею! Я тоже могу это сделать. Я все еще использую версию indie, поэтому я стараюсь, чтобы код был настолько мал, насколько это было возможно по-человечески. Другая проблема с этим методом заключается в том, что мне по-прежнему нужна функциональность кнопки, поэтому мне нужно будет поставить прозрачную кнопку поверх нее. Читая, как другие люди реализовали такую функциональность, этот метод выглядел так, как будто это было бы проще всего. –