Hello! I had this problem. What you need to do is add this to the top of your code:import ssl ssl.match_hostname = lambda cert, hostname: True and for the other error, just close and open the app. Hope it works for you!
That makes sense, but they disappear from the easy_config display once a new choice has been made. My experience using the feature on two different iPads is the same. Once a new color selection is made, that particular control becomes permanently blank. Thereafter, when easy_config is used again, those previously used color controls remain blank. So I did an $ rm -r command and removed the StaSh folder and did a complete reinstall of StaSh in order to see those controls again—and this time left the 'tint' control alone. Success. I can see the cursor.
Your views start at the root view -- the one you call present on -- and then are heirarchical going down . If you assign a name in the UI editor, you can refer to a subview by name, a but only from it's immediate superview.
Please do the following:. From your button action, call this method on sender.
print('root:', root.name, type(root))
def print_subviews(v, prefix):
print(prefix, v.name, type(v))
for sv in v.subviews:
That will print something like
Etc. Hopefully this helps explain your view heirarchy.
Note that often people create global variables, or attributes in the root view that point to deep subviews...
Then you can simply refer to these in your callbacks functions without having to use superview/subview business in your callbacks. If your button takes action on a specific item, that ends up being cleaner. If instead you have 5 buttons using the same action, then you would use sender. Superview