Ink responsive email: Trouble with block-grid, need assistance - ios

I have used your block-grid template with some customization to match an email concept in order to achieve a responsive design which could work across mobile and in desktop email clients. Technically the right column needs to shift under the first one on smaller screens. I also used your CSS inliner. It works well except for a small problem which is driving me crazy! On my iPhone 4S (v. 7.1.1) in Apple Mail the layout displays a fair amount of padding on the far right instead of extending the tables all the way across the screen. The header and the following block of tables are affected as well as if they would have a padding on the right. I have set the width to be 100% but it doesn't seem to work. I have changed the background color of table cells in the included code in order to see how the tables are defined too.
http://www.aetna.com/creativeservices/email/healthyapps/HAoffer_test3d_justTables_plain.html
Any, suggestions of why the tables are not expanding and misbehaving with extra padding?
Thank you for your feedback in advance.
Attila

It looks like your table with the class name of "apps" is still set to 315px, even in the smaller media queries. I believe setting that to 100% should fix your problem.

Related

Should I use UILabels?

I'll start developing a new project and my app will simulate a real machine. This real machine has a screen with approximately 150 mm.
This screen is used to insert data and to show some outputs to the user. It's like those printer's little screen. You know, with some options.
In order to replicate it in my app... Should I use a lot of UILables? One per line and column? Or, is there any other way to do it? What's the best practice?
Thank you
Well, if we look at Apple Documentation we'll see that
UILabel
A view that displays one or more lines of read-only text, often used in conjunction with controls to describe their intended purpose.
So that means that if you want just show some text to the user, UILabel is your choice. To be honest, I can't see how it's related to best practices, but if you weren't sure – this is okay to use UILabel for your case. You just need to set them up properly.
You can use more than 1 rule in 1 UILabel, by setting the amount of lines in the attribute inspector

How to get iOS app to work on all iPhones? (Constraints)

I am fairly new to developing for iOS. I have a fully functioning program written in Swift and the UI was created in the scene builder on Xcode. I created an app for my work to simplify closing out the registers and other financial aspects. The app is complete and works perfectly, but was designed on the iPhoneX. The problem is that only a few of the employees have an iPhoneX, but they all have some kind of iPhone. I have tried setting up constraints but it never works. Ive tried scaling restraints and position restraints but I can't get the layout to look right on any other phone, and when I add the constraints it affects the view on the iPhoneX as well and doesn't look good on any iPhone. I need help getting this to work on all iPhones. I would like it to look and act the exact same regardless of the size of the phone, basically just scaled down. There are a lot of things on the screen and I can't figure out how to do this. Please help!!!
I have been working on this for a long time and I really need help. Please let me know if I need to clarify anything. I have posted links to some pictures of my UI so you have an idea of whats going on.
Constraints I tried adding, although I have played around with some other options.
Here's what it looks like on the iPhoneX, this is how I want it to look.
What it looks like on iPhoneSE (with constraints).
One thing I noticed in your Xcode project that none of your features are in UIView. Without it, it will be quite challenging and somewhat always different results. In theory, if you use AutoLayout features correctly it should work without UIView, but they make life so much easier. This is something I learned the hard way at the beginning of my iOS development. First set up your UIViews without any content inside it, give them some background colour to differentiate, once they are working on all devices. You can pin your features to superviews with no difficulty.
Since you have a repetitive features, you could also consider using Stack Views. You don't have complicated features, so as long as AutoLayout is set up correctly you should have no problems seeing it ok on all devices

Best approach at designing an iOS frontend

I am designing my first iOS app at the moment. Every view of the app needs to be available in portrait aswell landscape. Also all iPhone versions need to be supporrted.
As someone always working with windows and never owning any apple product it was a pain in the ass getting started but slowly things seem to work out. But before the whole design approach takes a wrong direction I rather ask here:
What I want to do is have constraints based on multipliers as much
as possible.
I will try to avoid constant values as much as possible since from
my understanding they arent scaling. I read that you can change them
programmatically but if possible I want to stay in the designer for
frontend related stuff.
Since the multiplier cant be changed based on the current size class
I plan to have a set of constraints for all kind of portrait size
classes and another one for landscape (using installed feature of
xcode)
To up and downscale labels and textviews I want to have a height
constraint to the superview with a very tiny multiplier (will
probably be complicated to keep all textviews the same height when
there are different parents across them?)
In theory this should produce views which up and downscale well and look the same on all kind of iPhone screens. Now I am curious what more experienced iOS designers think about my "plan":
Do you have different approaches?
Is there any book/tutorial/page you can suggest?
Thanks in advance! :)

Automatic scaling of fonts in iOS?

I'm a UX designer working with a handful of developer teams. We're having an issue with what I believe to be a lot of hard coded values for fonts (as well as other things). The end result being that if a user changes their font size on their phone, or if the app is loaded on a smaller phone like a 4 or 5, the whole design breaks.
I am just beginning to read up on it, but it seems that there's a proper way to build screens and handle text so that it adapts to both device size and user font settings without things breaking (like text overlapping, text boxes bumping into each other, or just flat out text sizes not changing/adapting when they should.)
It seems that the new San Francisco font helps somewhat with this, although we have not been able to implement it yet (again, too much hard coded stuff).
I wonder if someone could lay out the proper strategy for handling text at multiple device sizes and user settings. I am assuming it has something to do with Adaptive Layout. I need to be able to go back to the team and intelligently have the conversation.
You will have to use adjustsFontSizeToFitWidth property of UILabel. For details have a look at this.

iOS Layout - Whats the best solution?

For an iOS app i am currently working on, I need to manage the controls displayed on the screen based on the type of device the app is running on.
I will try to explain with a theoretical example (the actual numbers used below are not important, what interests me is best method to achieve the desired result).
Example:
In the case of the app in the screenshots, the button that overlaps the UIImageView should not be displayed at all OR displayed in another place on the screen.
So far I've worked with autolayout , but , from what i could figure, there's no way to say to xcode something like: hey, for a class size "Compact Width / Compact Height" , I want you to hide these buttons...but show them for "Regular Width / Compact Height" .
I also did some googling and saw some people talk about using different storyboards based on the device; I am also thinking, I could add/remove buttons dynamically based on the device type , but I think it's not so pleasant to have to add all of the constraints by hand (programatically that is).
So to resume, I would appreciate a suggestion of a 'best' way to do this , best meaning a combination of 'not so hard' + ' not so long'. Also, some code example (or links) would be highly appreciated.
Thank you all in advance !
I think it all depends how sophisticated it gets what you are doing overall. When you look at developer's code for large app projects very little is actually done in interface builder since the apps are so dynamic it's just too much work in IB.
Using multiple storyboards 'sounds' like a good idea, but often isn't. If you want to update/change one, in most cases you then have to change the other ones as well.
What I think is handy:
Use one storyboard (or multiple but for different parts of you app and not parallel ones) and then put in very 'special' cases multiple ViewControllers of the same class for the different size into the single storyboard. That way you won't forget about updating the second (and third) because they are all right there.
I would only use multiple 'parallel' storyboards for apps that support iPhone and iPad and it makes sense to really split them up..
Also:
I would as fas as possible still use just one representation and derive the other 'versions' from that in code. If you build a structured user interface you can then reuse (or just inherit) the code that 'hides' parts of the first viewController in the next. That way your code AND your IB files won't get cluttered.
Also think about internationalisation (if that is part of your future plans), since multiple IB documents and multiple instances of the same viewController layout really don't help for that ;)

Resources