Re: Clipping subview drawing to arbitrary path or image (iPhone)
Re: Clipping subview drawing to arbitrary path or image (iPhone)
- Subject: Re: Clipping subview drawing to arbitrary path or image (iPhone)
- From: Rick Mann <email@hidden>
- Date: Fri, 15 Jan 2010 17:07:43 -0800
On Jan 15, 2010, at 16:16:15, David Duncan wrote:
> On Jan 15, 2010, at 4:10 PM, Rick Mann wrote:
>
>>> If not, this could be done (with performance penalty) using the layer's mask property. Simplest way I can think is to make a new layer, assign the contents of the parent layer to that new layer's contents, then assign that layer as the mask of all subviews. This may require a bit of futzing around to get right however.
>>
>> The subviews will consist of a UIScrollView and a set of UIButtons. Generally, I'd like to avoid subclassing them, if possible. I'm implementing a control with behaviors very similar to a horizontal UIPickerView. Unfortunately, it lives in a non-rectangular shape, and the surrounding elements are transparent and should NOT show the control underneath.
>
>
> I don't see any reason why the mask property wouldn't work for that, as log as the performance is acceptable to you (I believe using a mask will cause an offscreen render to occur). That said, if you can possibly invert this (that is, invert the mask and draw the content *above* the others) you should have better performance.
>
> That and I think I spoke a little fast on the exact usage of the mask – iirc, you should only need to apply it to a common parent and it should affect all children as well.
Hmm. I tried some experiments with your suggestion, and seemed to be getting masking with the inverse of what I specified. So I looked at the docs for the mask property, and there's this note: "iPhone OS Note: As a performance consideration, iPhone OS does not support the mask property."
It's clearly doing something, but it's not clear that it's doing what I want. Oh. It's working in the simulator, I bet it won't work on the phone, and it still causes a problem: it doesn't make the masked-out areas transparent.
Thanks, though.
--
Rick
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden