Welcome!
This is the community forum for my apps Pythonista and Editorial.
For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.
iPadOS 16.1 input issues
-
Hi,
I do all programming on a iPad Pro. Yesterday updated to iPadOS 16.1 and console.input_alerts and custom listdialogs no longer working - not returning values.As a programmer I can get around some of these issues but my app is for my hospitality business and is vital for me to keep operating.
Just wondering whether Pythonista is still viable or should I use another platform.
Help much appreciated.
-
@gojyuan Have you tried using the @ui.in_background decorator?
@ui.in_background def button_tapped(sender): items = ['A', 'B', 'C', 'D'] result = list_dialog(title='Select item', items=items) print('list dialog returned:', result)
-
@bosco Thank you for your suggestion. Interesting results.
I had placed 2 print statements around the code - one after the main function call return,
selection = get_selection(sel,value)
select = custom.MyListDialog(title=title,items=selection)
print('After dialog call - Select',select)and the other where the custom code is defined - after the view.wait_modal() statement.
c = _MyListDialogController(title, items, frame, multiple, done_button_title=done_button_title)
c.view.present('sheet')
c.view.wait_modal()
print('MyListDialog', c.selected_item)
return c.selected_itemWithout ui.in_background, both print statements returned None.
With ui.in_background ( around the definition ), the print statement following the wait_modal showed the correct result. However the order of print statements was incorrect ie the result printed before the definition if that makes sense.… results …
After dialog call - Select None
MyListDialog {'title': 'BUSINESS', 'accessory_type': 'none'}Apologies for the long reply.
-
A little followup.
My app is quite large - customers, bookings, vouchers, invoices / payments.Testing just the suggested code works. I am returning dictionaries. I modified the code to return just a string and this did not work. I am suspecting this is to do with memory ( ? paging ) in IOS 16. If there are a lot of IOS apps running, the response is very poor.
I will be trying to write the return results to a specific file and then try to open it later to see if this works. I need a workaround until I can find a better solution.
-
More followup…
My programming history - I am 68 yo ( female) and have close to 40 years experience with mainframes (PL/1, Cobol,, assembler), Windows PCs ( dbase, VB, C#). The last 2 years I migrated to IOS with iPad Pro and chose Pythonista and taught myself Python with the help of this fantastic forum.
After my professional career, hospitality became an option and I completely rewrote a C# application using Pythonista. I have both an iPad version and iPhone version. I was lucky to be introduced to the current build at the start of my conversion. I am very happy that I can have a version for both devices ( same code )
There are many extremely talented people on this support forum and I have utilised a lot of shared code which was generously donated.
Fortunately I am able to do workarounds for some of the problems I am now facing. I think I will have to move on as I am quite nervous about changes to Apple hardware that may affect my program in the future.
I am currently testing SwiftUI Playgrounds but persistence data ( using SQLITE) is still an unknown. My only device for programming is my iPadPro (5th Gen), I do not own a Mac so xcode is not an option.
-
@gojyuan said
My programming history - I am 68 yo ( female) and have close to 40 years experience with mainframes (PL/1, Cobol,, assembler)
Wow, seeing Pl/1So I'm sure you worked on IBM platform... So, I'm 72 yo and worked close to 40 years at IBM.
Similar, isn'it?
-
@gojyuan said
I am currently testing SwiftUI Playgrounds
Same for me but seems difficult to generate a stand-alone app, fullscreen or sheet.
-
@cvp yes, our history is similar.
I had 10 years experience on mainframes - Honeywell ( punch paper tape, held together by rubber bands ), IBM System 370/145 and Amdal 470/V6 ( I was a systems programmer using Assember ). After our daughters were born ( 30-35 years ago ), I set up my own business using a variety of languages.
I love this industry because you are always learning something new. However sometimes caught out by technology changes.