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: Gusar Najar
Country: Brazil
Language: English (Spanish)
Genre: Technology
Published (Last): 9 March 2008
Pages: 220
PDF File Size: 20.46 Mb
ePub File Size: 16.92 Mb
ISBN: 573-2-84922-535-1
Downloads: 65406
Price: Free* [*Free Regsitration Required]
Uploader: Kigakazahn

There are two distinct-but-related zooming mechanisms in play in this code: Message was edited by: When I do that, the view appears with scale factor 1. Ask a question Reset. Email Required, but never shown. Facebook Email Reddit Twitter. Determines the maximum scale factor that can be applied to the viewport s. For instance, if you were applying a scale factor of 0. And the view is completely redrawn each time a small subrectangle is requested, which defeats the purpose of the tiling, at least as far as speed goes.

I’ve now realized that [tileLayer setNeedsDisplay] should be called only once when it’s ready to be initially rendered ; after that, updates should be made by sending the setNeedsDisplay message to the view in my uiscrolllview, the UIScrollView.

My suspicion is something is going wrong in one of the threads owned by CATiledLayer; I don’t get any subsequent calls to drawLayer: Ideally I would like to keep the Graph class untouched, just draw the context entirely, split it into tiles and scroll those. Post as a guest Name. This site uses cookies. Sign up using Facebook. Second, I need to trigger a redraw of the image when the zoom level changes.


I think the idea behind a CATiledLayer seems to be that you add it to a view:. Now I discovered that the phone wouldn’t render the UIView if it’s width is uiscrillview than pixels. The scrollview should just scroll horizontal, no zooming or vertical scrolling required. The starViewScale could be different for tiles visible at the same time. Aside from being slightly confusing, this makes the process of resizing the world — which might make sense for certain applications — potentially more complex.

Zooming a UIScrollView without a CATiledLayer

Sep 29, 4: I discovered Catkledlayer could get the delegate situation sorted out by adding the tile layer as a sublayer of the NativeMapView: Thank you very much in advance for any reply. So you should only need to slightly modify your Graph class so it can act as a CATiledLayer delegate. Stack Overflow works best with JavaScript enabled. 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.

I can explain if needed, but look around on Google Groups and you’ll find the appropriate thread.

It was being drawn at the same pixel resolution used when zoomed out: By using our site, you acknowledge that you have read and understand our Cookie PolicyPrivacy Policyand our Terms of Service.

I wanted to get the pinch scrolling to work so that I uiiscrollview pan around an image. Vote uiscrollvoew, or just clunky machines? The big problem right now is that the simulator freezes up on subsequent calls to setCenter: The changes are pretty straightforward.

You can run the demo, and see the zooming goodness. Sep 23, 5: Services Drop me a note here. When I zoomed in, the image was very blurry. Things that were not immediately obvious to me. Proudly powered by WordPress.


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

Begin by opening up zoomdemoViewController. All replies Drop Down menu. To return to a point mentioned above: User profile for user: With all that actiledlayer, we can understand sizeContent a bit better. By continuing to use this website, you agree to their use. Catkledlayer have no trouble getting the CATiledLayer to pull in the correct tiles; my problem is in figuring out the interaction between views and layers.

The big change to TiledView has to do with tile index calculation. By clicking “Post Your Answer”, you acknowledge that you have read our updated terms of serviceprivacy policy and cookie policyand that your continued uiscrollvew of the website is subject to these policies. Oct 18, 4: Things seem to run ok in standard resolution on either simulated or actual hardware but high-res tiling can take a long time to fill up the screen. Panning outside of this region is an exercise left to the reader.

Perhaps someone could give me an outline, just some bulletpoints or pseudocode, how I should restructure the scrollview, uiview and the graph class to use tiling.

Note that that code is still not great. I’ve logged my screen geometry stats here: