2013-06-28 21 views

Antwort

6

UIButton ignoriert Berührung, wenn Sie es berühren, wo es kein Bild Alpha gibt. Kann ich es so ändern, dass es auf seine gesamte Breite reagiert?

Eine einfache Möglichkeit, die ich immer noch glaube, funktioniert, ist die Hintergrundfarbe auf etwas zu setzen, die nur meist transparent ist. Ein Alpha, das sehr klein ist, aber immer noch größer als 0,1, sollte transparent aussehen, aber trotzdem auf Berührungen reagieren.

Andernfalls können Sie so überschreiben, dass es auch dann JA zurückgibt, wenn der berührte Bereich transparent ist.

+0

Konnte ich einfach ein konstantes JA für hitTest zurückgeben? –

+0

Wahrscheinlich möchten Sie zumindest überprüfen, ob der Punkt innerhalb der Grenzen der Schaltfläche liegt. – Caleb

+1

OK wird es tun - danke. Momentan scheint die Transparenzumgehung in Ordnung zu sein. Vielen Dank! –

7

ich tatsächlich tun dies die ganze Zeit, wo ich das Bild gesetzt mit transparentem Hintergrund in eine UIImageView und legte dann eine UIButton mit seinen backgroundColor Satz [UIColor clearColor] oben auf das Bild. Auf diese Weise, insbesondere bei kleinen Bildern, kann ich den "unsichtbaren" Knopf größer und einfacher für den Benutzer drücken.

Verwandte Themen