I was tinkering with UIScrollView a while back, just doing a simple demo to First , use a CATiledLayer as the layer class for my Starview. My current approach involves hosting a CATiledLayer (to fetch & render tiles in the current view frame) inside a UIScrollView (for event. The built-in zoom support in CATiledLayer integrates well (i.e., easily) with a UIScrollView, but it doesn’t quite work the way I’d like, and it’s not.

Author: Nik Dogal
Country: Angola
Language: English (Spanish)
Genre: Life
Published (Last): 10 April 2015
Pages: 277
PDF File Size: 17.63 Mb
ePub File Size: 12.71 Mb
ISBN: 277-3-29666-176-3
Downloads: 36025
Price: Free* [*Free Regsitration Required]
Uploader: Akinokora

Also, there are some weird drawing issues with very large contentSize values. Post Your Answer Discard By clicking “Post Your Answer”, you acknowledge that you have read our updated terms of serviceprivacy policy and cookie policyand that your continued use of the website is subject to these policies.

To return to a point mentioned above: I’ve logged my screen geometry stats here: So I’m building my own native iPhone map. Sep 29, 4: Sep 23, 3: User profile for user: Posted on Sep 23, 1: Not all the tiles seem to load even though I can see requests are being made for thembut Uiscrollvidw worry about that later.

A very simple UIScrollView demo

You can run the demo, and see the zooming goodness. Panning outside of this region is an exercise left to the reader. By continuing to use this website, you agree to their use.

This entry was posted in iPhone. To start the conversation again, simply ask a new question. Second, I need to trigger a redraw of the image when the zoom level changes. The built-in zoom support in CATiledLayer integrates well i. But after reading and googling a lot, I still find it difficult to understand the basics of CATiledLayer for this task-I’m somehow lost between Quartz vs.


It’s been a month since you asked but this may still be of use.

And more generally, does this approach even make sense? With all that said, we can understand sizeContent a bit better. If so, how should I continue?

The big change to TiledView has to do with tile index calculation. Oct 18, 4: I think the idea behind a CATiledLayer seems to be that you add it to a view:.

Sep 29, Message was edited by: Ask a question Reset. The scrollview should just scroll horizontal, no zooming or vertical scrolling required. The scale factor is always 1. Begin by opening up zoomdemoViewController. Aside from being slightly confusing, this makes the process of resizing the world — which might make sense for certain applications — potentially more complex.

Recode the sizeContent method in zoomdemoViewController. But I did not see any difference between your first code sample and the second one. When I zoomed in, the image was very blurry. My suspicion is something is going wrong in one of the threads owned by CATiledLayer; I don’t get any subsequent calls to drawLayer: There are two distinct-but-related zooming mechanisms in play in this code: Email Required, but never shown.

I just started using CATiledLayer tonight. Things that were not immediately obvious to me. Facebook Email Reddit Twitter. My content view has a scaled of 0.


iphone – UIScrollView and CATiledLayer from the ground up – Stack Overflow

NO]; Ok, so far so good. Stack Overflow works best with JavaScript enabled. I recommend keeping contentSize and CATiledLayer size under px x px, maintaining the offset of this rect from the absolute map size for the zoom level in an instance property.

I think the idea behind a CATiledLayer seems to be that you add it to a view: The starViewScale could be different for tiles visible at the same time.

This arrangement will tend to produce a higher-quality, more efficient image than would be obtained by simply applying a raw scaling transform to the full-resolution tiles. I have no trouble getting the CATiledLayer to pull in the correct tiles; my problem is in figuring out the interaction between views and layers.

All replies Drop Down menu. It should return discrete values based on powers of 2, and not be continuous as it is in the demo. I discovered I could get the delegate situation sorted out by adding the tile layer as a sublayer of the NativeMapView: Stepping through with the debugger, I see that this thread exits before the hang happens. To find out more, including how to control cookies, see here: Sep 23, 5: The zoom limits are fixed, but should be dynamic.

Any help will be greatly appreciated.