trigger.io topbar issue IOS - ios

The current module for the top bar breaks in IOS 6, reverting to a previous version makes it work again but will not work in IOS 7.
What I see is when I open the app with the new topbar and tabbar is the "hide" command does not seem to be hiding the header and footer, causing them to show while the loading screen is still showing (this happens in both IOS 6 and 7), then they will seem to hide only after the few seconds once the app is loaded.
Next the topBar does not seem to get tinted (stays black ) in IOS 6 and the webview seems to be off, in IOS 7 this seems to be ok but 6 its not working.
Edit 1:
After doing some additonal research it seems the app is crashing and throwing this error.
Oct 6 16:29:33 Michaels-iPhone Forge[341] : * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '* -[__NSPlaceholderDictionary initWit
This app has been working just fine on pervious versions and now for some reason is crashing
Edit 2:
So it seems there is a problem with both the header and footer modules (topBar and TabBar) where with IOS 6 they are just not working correctly. If I revert them to the previous version they work just fine for IOS (Will be testing 7 soon)
Next the error I was getting that seemed to be crashing things had to do with the request module, again if I revert that back one version I do not get the crashing I was seeing. Not sure why it was causing it to crash but like I said move it one version lower fixed the issues. I even double check it where I lowered it, ran it and had no crash, added it back in and got the crash, then removed it again and the crashing was gone.
Edit 3:
So I tested IOS 7 with the current settings I have and as expected the header and footers are messed up, seeing as the updates were for IOS 7 I kind of expected this. What is strange is that if I download the app from itunes the header and footer bars work just fine in IOS 7 but they have the old style of rendering. I will try to pre-render later on and see if it helps.
Edit 4:
Still no update from trigger.io on this obvious bug, I have been able to get the topbar to tint by making the core version set to 2.03 ( what seems odd is that forge says the default version is 2.01 but in the drop down I see 2.03 and the docs online show 2.03 as the most current but 2.01 says the "stable" version ) While I can get that working the tabbars are still not functioning properly as it seems to mess with the size of the webview between the header and footer. What is the really sucky part is I have updates that need to be made but here I am a week without an answer from trigger.io, how are we suppose to put faith in a company to build our apps if they put out an update with bugs that they seem unwilling to address or fix?
Edit 5:
To give a little more info for James this is what happens with different versions
scenario 1):
All modules up to date
Core version 2.0.3
IOS6 version (6.1.3)
TopBar and Tabbar show over launch image, once launch image is gone bars will no longer show. ( I have a hide event in place to hide them until a user logs into the the app )
Once the user has logged into the app the webview is messed up, almost like its calculating the height of the page without the tabbar and topbar in place so when it displays the page is not at the top but 100 to 150 px offset from the top
As stated this is with every module up to date and core at 2.0.3
scenario 2):
TopBar module 2.1 and tabbar module 2.0
All other modules are up to date
Core version 2.0.3
IOS6 version (6.1.3)
When loading up the app the topBar shows over the splash screen but the tab-bar does not, once logged into the app the same webview issues happens, offset by 100 to 150 px
scenario 3):
TopBar module 2.0 and tabbar module 2.0
All other modules are up to date
Core version 2.0.3
IOS6 version (6.1.3)
With this config everything seems to work ok, the topbar and tabbar do not show over the launch image, once inside the app the webview is correct and everything seems to work as expected but then a different issue comes up, the app will crash on the forge request, hence this error
Oct 6 16:29:33 Michaels-iPhone Forge[341] : * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '* -[__NSPlaceholderDictionary initWit
I cannot explain why the request module would work for logging into the app and making other request and then just suddenly fail, I do know though that if I change the request module back to the previous version I experience no issues with IOS 6
scenario 4):
TopBar module 2.0 , tabbar module 2.0, and request module 2.0
All other modules are up to date
Core version 2.0.3
IOS6 version (6.1.3)
Success! We have the app working as it should in IOS 6, no top or tab bar problems, no webview issues and no crashing.
This is great lets see how it looks on IOS 7..
scenario 5):
TopBar module 2.0 , tabbar module 2.0, and request module 2.0
All other modules are up to date
Core version 2.0.3
IOS7 version (7.0)
When I open the app the launch screen comes up, then goes away somewhat quickly and reveals the topbar and tabbar, almost like its going away too quickly and its just a white screen with a topbar and tabbar.
once I log into the app the topbar and tabbar seem to be cut off, like the are the right height but the margin inside the bar is set to like -50px so the bar itself gets pushed up and cut off.
scenario 6):
TopBar module 2.2 , tabbar module 2.1, and request module 2.0
All other modules are up to date
Core version 2.0.3
IOS7 version (7.0)
Opening up the app we see the splash screen but again the splash screen seems to hide too quickly revealing the topbar and tabbar with a white screen, then it places you into the app.
Once logged into the app things look as they should
scenario 7):
All modules up to date
Core version 2.0.3
IOS7 version (7.0)
We have placed every module and core to be up to date, same launch screen issues as in scenario 5 and 6 but don't see the crashing issue as before.
Edit 6
I Just tested out the hide manualy and it does not seem to be working with IOS 7, it just seems to ignore the hide manually command
This is snippet from the config.json
"modules": {
"launchimage": {
"version": "2.1",
"config": {
"android-landscape": "androidLand.png",
"background-color": "#000000",
"android": "androidPort.png",
"ios": {
"1536x2048": "img/splash/1536X2048.png",
"320x480": "img/splash/320x480px.png",
"640x1136": "img/splash/640x1136px.png",
"2048x1536": "img/splash/2048x1536px.png",
"1536x2008": "img/splash/1536x2008px.png",
"1024x768": "img/splash/1024X748.png",
"2048x1496": "img/splash/2048x1496px.png",
"1024x748": "img/splash/1024X768.png",
"640x960": "img/splash/640x960px.png",
"768x1004": "img/splash/768x1004px.png",
"768x1024": "img/splash/768x1024px.png"
},
"hide-manually": true
}
To double check this I tried it in ios6 and it does work, what I see in IOS 7 is the splash screen shows up for about 1 second, then goes away to reveal a white screen and the header and footer then loads up my webview completely ignoring the hide manually command. I tried with IOS 6 and the hide manually works, the way I tested this just to be sure is to completely remove the hide manually call in my code (so it would not hide) and on IOS 6 its not hiding as expected but ios 7 seems to blow right past that and hide the screen.
Edit 7
Seems there are some updates to the modules for tab and top bar.. will give it a shot!

I'm going to try to summarise this into 5 issues - let me know if I missed anything!
on iOS 6.1, the topbar and tabbar show over the launchimage
the window height as reported by webview (or placement of top of page?) is incorrect
the request module can cause an NSInvalidArgumentException
2.0 versions of tabbar and topbar don't work with iOS 7
the launchimage hides too quickly on iOS 7
1: Can you include screenshots, and your config.json, in the question (or, see https://trigger.io/forge/support/ to send directly)? I'm not seeing the behaviour you describe: the topbar and tabbar are invisible until the launchimage hides.
2: Are you using window.innerHeight or similar to layout your app? Or do you mean that straightforward HTML is being laid out incorrectly? A screenshot would be great, along with a stripped down code sample if possible.
3: Could we split this off into a separate SO question? It's almost certainly unrelated to the thrust of this question. In that, samples of config.json and code would be great.
4: iOS 7 support was included in the 2.1 versions of those modules: 2.0 will not behave properly on iOS 7. See https://trigger.io/modules/_/changelog/.
5: If it's just that your app needs a bit more time to initialise, you can use the "Hide Manually" option for launchimage (https://trigger.io/modules/launchimage/current/docs/index.html)

Related

UITabBar rendering inconsistently in ios13+

I'm updating an app that I believe I last updated with ios SDK 14. The app still builds and runs but there are number of UI inconsistencies. The tab bar for instance seems to render transparent sometimes and other times not...
Tab bar renders fine for VCs 0 (Dashboard) and 2 (Insights)
But for 1 and 3 I get the following, which I presume is because it is transparent now and lacking a backing view...
If I set the background colour to white, it partly solves the problem but the "shadow image" (ie the separating line) is the missing...
And as you can see I've tried it on a couple simulators as well...
And it's not 100% consistent that the problem is on tabs 1 and 3, though I'd say 95% consistent...
The project is storyboard / autolayout based. Min target version was 12.4 but I've bumped to 13.0. No SwiftUI at the moment. Hoping for a simple solution here...

Xcode Project Settings Preventing TabBar at Bottom of iPhone X Models?

I have an old project that I've been working on and off on for about 4 years now - the project has gone through many upgrades of XCode versions from 6 to 10 (I'm now using XCode 10.2.1 with 12.2 SDK). The main problem I'm having with it is that it utilizes a Tab View Controller to switch tabs, and no matter what I do, I cannot get the tab bar to appear on the bottom of an iPhone X family device correctly: it appears much higher than it should.
To try and finally narrow down the problem, I've essentially temporarily "replaced" all code and storyboard items from the project to see if anything will move the tab bar to where it's supposed to (if I just create a blank new project with a tab bar controller, the tab bar does appear where it should). I created a test storyboard with just a Tab Bar Controller going to one navigation controller (no constraints have been put in). There is no viewController codes attached to them. I've replaced the app delegate with a "blank" app delegate so there are essentially no extraneous code or restraints there at all. And I still get the tab bar moved:
This happens on the simulator and the device, and there is no code or storyboard setting that's doing this (this same setup on a new project puts the tab bar in the right place).
I've looked around in the Build Settings and other properties that I may have missed to see if I constrained something years ago that may affect this, and didn't see anything.
Is there anything I should be looking for in the project settings that would do this?
I don't want to rebuild the project in a new project - there are many linked libraries, certificates, cocoapods, storyboard items, and I know it would be horrible to try and put it all back in one piece.
My Deployment Target is set to iOS 11, Devices: iPhone, Base SDK: iOS
Any help would be greatly appreciated!
This is usually caused by not having a correct launch image for the iPhone X. The easiest way to fix this is to tell the app target not to use launch images (from the app bundle or from the asset catalog) but to use the LaunchScreen.storyboard instead. (If you don't have one, make one; be sure to set it as a launch screen storyboard by clicking Use As Launch Screen and configure your target to point to it. Examine a plain vanilla new project to see what I mean.) You might not want to keep things that way in the long term but at least it will allow your app to launch to the correct size on all devices.

Differences between iOS 7 to iOS 7.1

Just updated my Xcode to 5.1 and the iPhone i work on to the 7.1.0.
A lot of apps that I have made, I have to redesign for the new iOS, because whenever you used a UINavigation bar, the Y point of your UITableView in UITableViewController would be the actual screen coordinate, so you would have to add 64 every time, or UINavigationBar.size.height.
Now this is changed, there is no need to add 64, the new 0 point is just after the navigation bar.
Did anyone notice any ether differences?
And does anyone now how will the changes effect the users how did not update to 7.1.0?
I ran into the same issue and found that including
[self.navigationController.navigationBar setTranslucent:NO];
helped to resolve my issue.
I noticed that if I brought my tables and data up to the top in the xib file to match how 7.1 handles it...it messed it up for 7.0. Including the code above while having the content at the top of the xib file proved to work for both 7.0 and 7.1.
Hope that helps,
Wes

Why my UI views have an iOS 6 look when in Xcode but not when building the app

I have a project that I created using Xcode 4 and the iOS 6 UI, when I opened the project with Xcode 5 for first the time I was asked if I wanted to convert the project and I said yes, It did its thing and everything worked fine, when I run the application it looks and feels like iOS 7 (the app is super simple). The issue or what I want to change is the way the UI views look in Xcode (UIBuilder), for instance if I add a new button to my view controller it shows the button with the border around it as in iOS 6, but again, when I run the app the border disappears, it looks like iOS 7 without the border which is what I want but it bothers me to see the border when I'm in Xcode.
Any idea? Is this a normal behavior when moving from one iOS version to another?
Thanks

navigation no longer working in phonegap iOs app after updating jqtouch

I created an iOS app last year using html, css, js, jqtouch and phonegap. The app has worked well until recently. It appears that since the iOS 5 update, there is a problem with the navigation.
If you scroll down the apps "pages" and try to select any options below the original screen horizon, the navigation doesn't work. Scroll back all the way to the top of the page and the links above the screen horizon all work. If you scroll back up the page, but not all the way to the original starting position, even the links that are above the original screen horizon won't work.
I worked with Phonegap support and they suggested the problem was with jqtouch. I updated the jqtouch files in the project, and now when I try to run the app (from Xcode) in the iPhone simulator or on a test device, the navigation doesn't work at all. Before, the "links/buttons" would change color as they were supposed to but no work. Now, the "links/buttons" won't change color or navigate to the next div or page.
Could someone tell me what I may have missed in updating the jqtouch/jquery files that could cause this?
We had the same issue and e solve it updaing to the latest jquery and jqtouch version.
Hopefully this will help you.

Resources