iOS Question Screen update in simulator is delayed (solved)

SDFP Studio

Member
Licensed User
Hello,
I'm new to B4I, i made a project on B4A that i'm trying to port on B4I.
I use the simulator on a local mac (VMWare).

In my app, i do all the positionnings by code and i have a very strange behaviour with the simulator :

1 - I click a button > my code modify the view. The log shows that all my code is executed but screen it is not updated on the simulator.
2 - I click on another button (active but even with no event sub) then the simulator update display to reflect previous modifications.

This behaviour is constant, i have to click on another button to update the screen.

Did you already see such a bahaviour ? Is there a way to force refresh of the screen ?

iOs 10.14 / xCode & Simulator10.0
B4i Build Server
Build server is running.
Version: 6.3
Server time: 17:09:13
Mac SSL Key
Key IP: 192.168.1.199
SSL port: 51042

Thanks for your help,
Francis
 

SDFP Studio

Member
Licensed User
I do some more tests :

If i start a small project, create a button by code, change its backgrounf color on click event (bt.color = ...) then the color doesnt change on the simulator, i need to press many times, alltough event code is executed with no lag when i click.

If i replace bt.color = with bt.setanimatedcolor(100,..) then it is ok !!

So please, if you use B4I, can you tell me if you think there is something wrong with my setup (xcode 10.0 ??) or B4I is not as reliable as B4A.
I start an important project and, at the moment, i spend many days to achieve to change the backgroud color !

Thanks
Francis
 
Upvote 0

sorex

Expert
Licensed User
Longtime User
or B4I is not as reliable as B4A

I doubt it's related to B4i. I've been using it for years BUT with a real device (iphone 4 & 5) and the remote builder.
Smells more like the problem is the simulator.
Can you give it a try with a real device?
 
Upvote 0

SDFP Studio

Member
Licensed User
Hi,

thanks Erel for looking at my issue.

As i prepared a test project, the first time i ran it, it worked, so i looked my previous test project and my new test project and noticed that it works as it should if i have that code :

Code working:
Private Sub Application_Start (Nav As NavigationController)
    'SetDebugAutoFlushLogs(True) 'Uncomment if program crashes before all logs are printed.
    NavControl = Nav
    Page1.Initialize("Page1")
    Page1.Title = "Page 1"
    Page1.RootPanel.Color = Colors.black
    
    bt1.Initialize("bt_color",bt1.STYLE_SYSTEM)
    bt2.Initialize("bt_color",bt2.STYLE_SYSTEM)
    
    bt1.SetBorder(1,Colors.White,2)
    bt2.SetBorder(1,Colors.White,2)
    
    bt1.Text = "color"
    bt2.Text = "color"
    
    Page1.RootPanel.AddView(bt1,50,50,100,100)
    Page1.RootPanel.AddView(bt2,50,150,100,100)
    
    NavControl.ShowPage(Page1)
End Sub

Sub bt_color_Click
    Private bt As Button = Sender
    bt.Color = Colors.Blue
End Sub

But, if i comment bt1.text and bt2.text, then i have my issue, background color is not immediately updated on the screen.

In my 'real' project (layouts converted with B4l2Bil, maybe i should not) text is defined in designer with 'material icons' font.

Thanks again,
Francis
 
Upvote 0

Erel

B4X founder
Staff member
Licensed User
Longtime User
Don't use B4A2Bil. Just copy and paste the layouts between the IDEs.

I think that I understand the problem. It is a network problem between the IDE and the VM which causes the network to be slow. If the network is slow then the code will be slow in debug mode, especially after you modify it.

Check the network settings and see if you can improve it.
 
Upvote 0

SDFP Studio

Member
Licensed User
I made new layouts with copy paste and the display is ten times faster, thanks for that.
I still have to use animatedcolor if i want an immediate screen update, but as all is faster, it is less an issue for now.
About my network, i have a ping less than 1 ms, file copy between pc and mac is normal and i have no firewall.
 
Upvote 0

SDFP Studio

Member
Licensed User
Hello, good morning

I upgrade my osx env, Mojave 10.14.6 / xcode 11.1 and the issue is resolved :). By the way it is much slower than in 10.0.
Thanks to people who participate in this thread.

Thanks Erel for your apps, i spent 2 years on an android app, and now, i am going with b4i. That is absolutely incredible how it is compatible and fast to copy from b4a to b4i.
Thanks for that.👏

I start a new thread for a question about file system on ios.
'sorry for my English, i'm french'
 
Upvote 0
Top