In my flutter app, I'm implementing a full page view using -
SystemChrome.setEnabledSystemUIMode(SystemUiMode.immersiveSticky);
Now, It works just fine until I reach a page in the app that uses PinCodeTextField. In that page, a user can input the received OTP.
Now, the issue is that as soon as the page is opened, "Auto-fill code from Messages" appears and it brings back the notification bar as well as the bottom menu bar.
I have not implemented this feature and looks like somehow It has come on its own. Though, it is a nice feature to have, I really don't want it to mess up my app's full page view. Not until I restart the app, it goes back to full page view but again whenever I reach to a page with PinCodeTextField, that popup appears and messes things up.
Now, how do I force my app to go back to full page view ? If that is not possible, how do I stop Auto-fill code to keep coming on my screen on such pages ?? Kindly help.
Related
I can't really share code for this as it's for my entire ~large~ application, but is it normal for a flutter application's lower navigation stack to be updated when the current page is?
For example, in this page I have a standard form with a few TextFormFields:
Whenever I click on one to start typing the page sets state as expected, but by adding print("Update"); inside the build function of the bottom page of the navigation stack, I can see that page is being updated too. It happens on all pages I put on top of the first route page. I've also been experiencing that the home page gets slower as the app has been open for longer, could this be a cause for that problem too?
I have built a functioning flutter app using Navigator 2.0 API and RouterDelegate. All the navigation works fine but the problem is on the back event. On pressing back either from the app bar or from the device button, the top page does pop but the page that is 2 layers deep in the stack is displayed for a fraction of second before the desired page is displayed.
Like in the attached image, when going back from ArchivedChatThread, Bots is displayed for few milliseconds and then another page is shown. Here, the stack is also not proper as there should be one page between Bots and ArchivedChatThread i.e ArchivedChats.
I tried a lot of different things but am unable to find a solution as this is my first flutter app and Navigator 2.0 being a relatively new and complex concept.
image
Any kind of help is appreciated. Thanks!
There are 3 screens in my app. When I use popAndPushNamed() in the 2nd page, it pops the 2nd page and shows the 3rd page, but when It pops it shows the 1st page behind it in milliseconds. how to avoid that?
is Animation the way?
or are there any other methods just like push and show 3rd page, and pop 2nd page when the 3rd page visible to the user?
popAndPushNamed() as the documentation suggests, pushes the new route but pops the old route simultaneously, and hence, there is a small moment where you can see the first page even if your new routes are fully opaque. Replace the method with Navigator.of(context).pushReplacementNamed() and it should work as expected.
The problem I’m asking is how to have a kind of page (call it SetupPage) that is only shown until the user presses a button on the screen. Then when the screen should show the next page(call it HomePage) and every time the app is opened after the button press, the normal page will be HomePage.
I’ve seen this general idea in many apps (sign-in and home page, enter phone number or school and main page, etc) and I would like to have it in my app! I’m thinking of using Navigator routes and having the stack be this at first:
(HomePage, SetupPage)
and then once the button is pressed I can pop SetupPage. But I’m not sure how to implement this.
I already have the SetupPage and HomePage classes made. I’m not doing a sign-in the SetupPage or anything like that. I’m not using FireBase in this app either.
You can use the Flutter package shared_preferences to save a Boolean that tell you at the start of the program is the button pressed or not.
In the home page of my iphone application i am calling a web page, users can do some actions(comment,like etc) from other tabs of my app-After that,when the come back to home page the web page must be refreshed(eg:- comment/like count must be incresed)
If user do the refreshing of home page(scroll up from top) the page is getting refreshed,but the client wanted to refresh it automatically
So i have loaded the web page in viewDidAppear method,
Now problem is-whenever user come back to home page it gets refreshed and showing from the top(if user go to detail from some link at bottom and come back,webpage shows the top)
how to prevent this,or is there any better idea for automatic refreshing ?
Perhaps a better way would be to use javascript to download the updates in the background, then update your content appropriately. UIWebView has a method –stringByEvaluatingJavaScriptFromString: which can be used to run javascript code. You could supply the method call to perform the refresh in your -viewDidLoad method.
Another option could be to download the HTML in the background, and compare it too what is displayed, if different, swap. That way content is only refreshed when needed. Although that still gives you the problem of content moving to the top.