How do you make the safe area transparent? It seems to show up on some of my ViewControllers but not on others. The snap shot is from one using a TabViewController. I have been able to remove the header but I cannot get the safe area to go away.
Related
Ponder holding iPhone X in landscape.
As the safe area seems to be symmetrical, the inset of the safe area is as big on the left side as on the right side, regardless which side the notch is on.
Assume that we would want to have the safe area stretch further to the screen edge on the side where the notch is not on. Anyone got a good approach for that? I assume that we would want something that works with autolayout.
Here the notch is on the left side. We would like to have the margin on the other side smaller, because it feels like we could display more contents there.
While it's possible to do this, Apple advises that you don't do it in their Human Interface Guidelines:
Inset essential content to prevent clipping. In general, content
should be centered and symmetrically inset so it looks great in any
orientation and isn't clipped by corners or the device's sensor
housing, or obscured by the indicator for accessing the Home screen.
For best results, use standard, system-provided interface elements and
Auto Layout to construct your interface. All apps should adhere to the
safe area and layout margins defined by UIKit, which ensure
appropriate insetting based on the device and context. The safe area
also prevents content from underlapping the status bar, navigation
bar, toolbar, and tab bar.
That said - I totally understand wanting to use that extra space!
In trying to understand this part of the HIG, let's put it this way: if you have a game that you're watching in landscape, the controls should be symmetrical, so that whether the user is holding the game in landscapeLeft or landscapeRight, the button is inset by the same amount. If you implement your controls asymmetrically, then the user's muscle memory won't match in one orientation vs another.
You can hear Mike Stern (Design Evangelist at Apple) talk through this concept in the WWDC video from Fall 2017 title "Designing for iPhone X". (This link has a timestamp where Mike discusses landscape symmetry in detail.)
I am trying to set the corner radius for the bottom left and bottom right corners for a WKInterfaceGroup. I was able to set only one single radius value and that would change it for all the corners. I couldn't find a way to access the CALayer to specify it there either.
Is there a way this can be done?
Thanks!
(The group would contain 2 labels and would be in contact with the sash in the dynamic notification interface.)
You asked about WKInterfaceGroup, but from your response to #BalestraPatrick it sounds like you are specifically trying to achieve bottom corner rounding in the long-look notification, correct?
If so, it's a bug in the current beta.
Assuming you can sign in, here's a developer forum describing the bug: https://devforums.apple.com/message/1098796
The gist is: there used to be a boolean on the Category (where sash color is) to offset content (that's what Apple's Documentation is referring to here https://developer.apple.com/library/prerelease/ios/documentation/General/Conceptual/WatchKitProgrammingGuide/BasicSupport.html) but they took it out of Beta 5. Now, you are supposed to be able to set the background color of the notification controller itself and it will do the rounding for you. Just doesn't work yet.
I've logged a bug with Apple and had it closed as a "duplicate" - which means it's a bug and they know about it. Feel free to log again - it increases the priority of the bug in their queue :)
I hope this answer is what you're looking for.
After thinking about it for some time, I came up with a solution. There is no solution in code. I think this is how Apple is doing the same effect for the calendar notification view.
You need to make the main group's backgroundColor white. Then in the top group set the background color to some other color (like red in my case). Then add another group with the same background color as the container group.
The result should be like this in the Apple Watch Simulator.
I'm setting up a UIRefreshControl in my uitableviewcontroller, but there is a big gap between the navbar and the top of the uitableview. Playing with 'adjust scroll view insets' doesn't help, as the controller will underlay the navbar at startup. I could disable 'under top bars', but I want that ability when scrolling. When poking around in the debugger, I noticed at various times the tableView.contentInset is offset by 82 points, which is different from the ususal 20/64 pt offset people talk about regarding the new ios7 bar behavior. What's going on here?
Found a solution while poking around more; hope it saves someone a few hours!
I needed to instantiate my UIRefreshControl after viewDidLoad:, or avoid setting its attributedTitle in code at least until after that (e.g. if I enabled refreshing of the table in IB). Setting the string inside viewDidLoad: messes up iOS's layout of the control+tableview, but it's ok within viewWillAppear: or later once the geometry is set. And I think 82 points is the height of the UIRefreshControl. Setting the refresh title in IB would've also avoided this problem, except that I was doing so in code because I didn't want to have to enable refreshing in IB all the time with each of my tables.
I have a continuous form with many control elements ordered in two columns. The form is opened with the WindowMode 'acDialog'.
When I take a look at this form at my desktop computer there is no problem. But I want to use the application also on my laptop. When I open the form on my laptop, I only see the first entries, but not the others anymore. Unfortunately I havent found an opportunity to use scrollbars in my form.
What I have found is this (did not work):
Add or remove scrollbars
Edit:
The View should look like:
but on my laptop it looks like:
So I want to have scrollbars. The scrollbar property is set to both directions.
Edit 20121126, the design view. The blue part is header, the txts are in the detail view and the buttons are in the footer:
This problem has stumped me before. Access is not smart enough to realize if the screen is set to a different 'zoom' than 100%. So Access is thinking that the entire form is on your screen when really it is not.
This really only applies if you have Windows 7 and maybe 8, but I have no idea about that. If you go to your display property (right click the desktop and select 'Personalize' then Display in the lower left-hand corner of the pop-up.)
If you are not set at 100% then access is missing 25-50% of your screen. access goes off of pixels, which is set in the resloution, but when using 125% Windows expands everything by 25% and that can push things right off the screen. The form does not need scroll bars to fit on your screen, just need to set your zoom to 100%.
I found this out by having a 'control bar' set to be x-250 pixels from the left (where x is total left to right pixels). However one computer could never see the control bar and it was because the screen was +125%. I have never been able to figure out how to get the current 'zoom' from Windows. I have searched through all manner of API's. I hope this is the solution you were looking for! Good Luck!!
I have placed 3 images into UIImageViews using xcode4 interface builder: background, and two pictures. Background image fills the whole visible area and it looks the same in interface builder, in simulator and on device. In addition, I'm placing another image at the very bottom (stick to) of visible area, and another one on top of it. Both looks as I want in interface builder. The problem is both bottom image and on top of bottom image moves approximately by 50 pixels up when running in simulator or iphone4 device. Interesting part is that background image fill whole visible area. I should note that I'm using UIInterfaceOrientationLandscapeRight orientation so the status bar in my orientation should appear on top but I have disabled it in plist, so I guess it's not related to this problem. Both of my problematic UIImageView's have mode "Bottom". Also, all of three images have #2x image twin. But why can see everything OK in interface builder and then some shift on simulator and device? Also, strange why background is not moved. Does anybody had the same problem?
Try hiding all elements in your nib. (status bar, tool bar, etc)
Make sure you have your springs adjust for your desired effect.
Hope this helps!