Кликабельная область вокруг значка в Unity
Я пишу мобильное приложение Unity. Я хочу добавить значок закрытия (X) для одной сцены. И добавьте немного отступов вокруг иконки, чтобы увеличить кликабельную область (потому что значок не такой большой).
Я написал следующий код:
// create button
GameObject buttonContainerObject = new GameObject("XIconContainer", typeof(Button), typeof(RectTransform));
buttonContainerObject.GetComponent<Button>().onClick.AddListener(onClickAction);
// set button location and size
buttonContainerObject.transform.SetParent(canvas.transform);
buttonContainerObject.GetComponent<RectTransform>().sizeDelta = new Vector2(area_width, area_hight)
buttonContainerObject.transform.position = some_position;
// create image
GameObject buttonIconObject = new GameObject("XIconImage", typeof(Image));
buttonIconObject.GetComponent<Image>().sprite = xIconSprite;
// set image location and size
buttonIconObject.transform.SetParent(buttonContainerObject.transform);
buttonIconObject.transform.localPosition = new Vector3(0f, 0f); // in the center of button
Но когда я строю проект и нажимаю на кнопку, он реагирует, только если я нажимаю на изображение, внешнее изображение (и внутри buttonContainerObject
границы) ничего не происходит.
Что я могу сделать в этой ситуации? Спасибо за ответ.
1 ответ
Вы можете просто сделать большую кнопку и изменить ее прямоугольное преобразование так, чтобы оно было настолько большим, насколько вы хотите, и поместить свой значок как дочерний элемент объекта.