Я бы хотел иметь UIButton с закругленными углами, размер которого будет ограничен его заголовком. Эта кнопка будет помещена в вид горизонтального стека с предшествующим текстом. Я хочу, чтобы размер кнопки был фиксированным, в то время как размер предыдущего текста ограничен только пространством, доступным рядом с кнопкой.
Вот код, который у меня есть на данный момент:
UIStackView textAndDoneButtonStackView = new UIStackView
{
TranslatesAutoresizingMaskIntoConstraints = false,
Axis = UILayoutConstraintAxis.Horizontal,
Distribution = UIStackViewDistribution.Fill,
Alignment = UIStackViewAlignment.Center,
Spacing = 10
};
// Create the appropriate control for this habit
UIView habitTitleView = CreateControlForHabit(habitTitle, kv.Value.workout, workoutName);
textAndDoneButtonStackView.AddArrangedSubview(habitTitleView);
// Add the done button
UIButton doneButton = CreateDoneButton(healthy_green);
habitIdDoneButtonId[kv.Value.id] = (int)doneButton.Tag;
textAndDoneButtonStackView.AddArrangedSubview(doneButton);
и
CreateControlForHabit(...)
{
UILabel uIHabitTitle = new UILabel { TranslatesAutoresizingMaskIntoConstraints = false };
uIHabitTitle.Text = habitTitle;
return uIHabitTitle;
}
, затем
private static UIButton CreateDoneButton(UIColor healthy_green)
{
// Add the done button
var doneButton = UIButton.FromType(UIButtonType.RoundedRect);
doneButton.TranslatesAutoresizingMaskIntoConstraints = false;
doneButton.SetTitle(Utilities.GetLocalizedString("habit_done_button_text"), UIControlState.Normal);
doneButton.SetTitleColor(UIColor.White, UIControlState.Normal);
doneButton.BackgroundColor = healthy_green; // Healthy Green
doneButton.Layer.CornerRadius = 5f;
doneButton.AutoresizingMask = UIViewAutoresizing.FlexibleWidth;
doneButton.ContentEdgeInsets = new UIEdgeInsets(top: 0, left: 10f, bottom: 0, right: 10f);
doneButton.Tag = doneButton.GenerateViewTag();
// View is hidden by default
doneButton.Hidden = true;
return doneButton;
}
Моя проблема в том, что мне нужна кнопка с закругленными углами, и я не могу передать результат UIButton.FromType () пользовательскому классу, который переопределит IntrinsicContentSize.
Какие параметры доступны здесь, чтобы исправить размер этой закругленной кнопки?