2017-03-26 14 views
0

私はモバイルUnityアプリケーションを書いています。 1つのシーンに閉じる(X)アイコンを追加したいと思います。クリック可能な領域を大きくするためにアイコンの周りにいくつかのパディングを追加します(アイコンはそれほど大きくないので)。Unityのアイコンの周りのクリック可能な領域

私は次のコードを書いた:

// 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範囲内の)何も起こりません。

この場合、私は何ができますか?レスポンスありがとう。

答えて

0

大きなボタンを作成して、それをrectの変形をあなたが望むほど大きく、オブジェクトの子としてアイコンにするだけで変更できます。

+0

私のコードをお読みになりましたか?私はそれをしましたが、うまくいきませんでした。 –

+0

ビルドする前に動作しますか?私はまだコードが動作しない場合は、あなた自身でインスペクタでそれをやろうとします – pasotee

関連する問題