Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Flex Prevent soft keyboard from closing

I have a mobile AIR app with a simple layout:

<s:layout><s:VerticalLayout /></s:layout>

<s:TextArea width="100%" height="100%" />

<HGroup width="100%" >
     <s:Button label="button" />
     <s:Button label="button" />
     <s:Button label="button" />
</HGroup>

The application is set to resize when the soft keyboard opens by setting resizeForSoftKeyboard="true" in the main app. The textArea uses the default Flex 4.6 skin.
My problem is, that if the user opens the keyboard by typing text into my texArea, he will be unable to click the buttons below the TextArea, because as soon as he tries to click a button the soft keyboard lowers (because the focus it out of the TextArea?) and immediately opens again (because the mouseDown position is now above the TextArea?).

How can i prevent the soft keyboard from closing, so the user is able to click the buttons between the TextArea and the keyboard?

Thanks

like image 366
sydd Avatar asked Nov 13 '22 11:11

sydd


1 Answers

This is very strange. I tried running your program myself, and I have no trouble at all:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
           xmlns:s="library://ns.adobe.com/flex/spark" applicationDPI="320" resizeForSoftKeyboard="true">
    <s:layout><s:VerticalLayout /></s:layout>

    <s:TextArea width="100%" height="100%" />

    <s:HGroup width="100%" >
        <s:Button label="button" click="trace('clicked')"/>
        <s:Button label="button" click="trace('clicked')" />
        <s:Button label="button" click="trace('clicked')" />
    </s:HGroup>
</s:Application>

The keyboard opens when I touch the text area, closes when I click a button (without opening again), and the clicks show up in the console when debugging.

You didn't post the entire app, do you have anything in the complete program that I don't? In that case, I would see if any of that could interfere with the UI.

like image 185
DennisK Avatar answered Dec 23 '22 09:12

DennisK