Skip to main content
Participant
February 13, 2012
Question

Adobe air iOS touch problem

  • February 13, 2012
  • 19 replies
  • 7505 views

In my air projects I am using MouseEvents (MouseEvent.CLICK)  for touch functions.

It is working well on Android devices but, it is not working on iOS devices properly.

here are the videos for Android and iOS:

      android: http://youtu.be/ccWdsoqCY80

      ios    : http://youtu.be/5NERQbO7DJM

This topic has been closed for replies.

19 replies

Nimisha1
Participating Frequently
March 1, 2012

Hi Berk,

Can you please send a small application which can help us reproduce the bug and also please specify what renderMode you are using?Or you can log the bug with the bug files at bugbase.adobe.com .

Thanks,

Nimisha

Participating Frequently
May 17, 2012

Did this ever get resolved?  I have an app waiting to go to the app store right now but I can't release it until I get this figured out.  I'm noticing that the MouseEvent firing isn't consistent.  The ActionBar is the problem area for me.  My application is using RobotLegs and FB 4.6 (MXML based app)  but I don't think that has anything to do with my issue.

Here are my trace statements from testing which actions get fired and if the action I am trying to take was successful or not.

1 - Works

mouseOver

mouseDown

focusIn

buttonDown

click

mouseOut

touchTap

2 - Works

mouseOver

mouseDown

focusIn

buttonDown

click

mouseOut

touchTap

3 - Works

mouseOver

mouseDown

focusIn

buttonDown

click

mouseOut

touchTap

4 - nothing happening, no click or touchTap event

mouseOver

mouseDown

focusIn

buttonDown

mouseOut

5 - nothing happening, no click or touchTap event

mouseOver

mouseDown

buttonDown

mouseOut

6 - nothing happening, no click or touchTap event

mouseOver

mouseDown

buttonDown

mouseOut

7 - Working, repeated actionbar clicks

mouseOver

mouseDown

buttonDown

click

mouseOut

touchTap

Partial code block:

<s:navigationContent>

  <s:Button id="btnList" skinClass="spark.skins.mobile.BeveledActionButtonSkin" includeIn="map" width="40" height="40"

                                                    click="trace('click');dispatchEvent(event);"

                                                    touchTap="trace('touchTap')"

                                                    buttonDown="trace('buttonDown')"

                                                    focusIn="trace('focusIn')"

                                                    focusOut="trace('focusOut')"

                                                    mouseDown="trace('mouseDown')"

                                                    mouseOut="trace('mouseOut')"

                                                    mouseOver="trace('mouseOver')">

  <s:icon>

                                                  <fxg:iconList width="17" height="17" />

  </s:icon>

  </s:Button>

</s:navigationContent>

Any help or suggestion will be greatly appreciated!!!

Also, the TouchEvent.TOUCH_TAP doesn't solve the issue we are having.

Markus

Nimisha1
Participating Frequently
May 18, 2012

Hi Markus ,

I am unable to reproduce this issue(with the provided code here on ios 4.3.5 and 5.1) with 3.2 build but I'll suggest you to use the latest build 3.3 available at http://labs.adobe.com/downloads/air3-3.html . If you still face the issue then please let us know .

-Nimisha

Participating Frequently
February 29, 2012

Yeah, I'm seeing the same problem with MouseEvent.MOUSE_UP. Rendermode is set to auto, and I'm using the AIR 3.2 RC compiler.

Looks like the iOS stuff is getting confused about Z-ordering. If I have a movie clip on top of another movie clip, sometimes tapping will send the mouse event to the clip underneath the one that should be getting the event. For example, I have a big "PAUSE" movieclip that covers the entire screen, and tapping on it (i.e. the MOUSE_UP event) will dismiss it. If I tap on it, it won't get mouse-events, sometimes requiring a half-dozen taps. Meanwhile the stuff underneath the pause movieclip will receive the events.

Note that I am only seeing this on iOS. Android and Desktop are working properly.

User Unknow
Legend
March 1, 2012

Please provide sample code so I can test. Because all that you said - don't work for me.

also dont hesitate to use MovieClip.mouseChildren = false for included MCs to eachothers and MovieClip.mouseEnabled=false if you don't want affect MouseEvents for MCs.

Also for MobileDevices better use TouchEvent.TOUCH_TAP rather MouseEvent.CLICK

User Unknow
Legend
February 20, 2012

Air 3.1, currently all work prefect.

I use GPU mode, iOS 5.0.1 and iOS 4.3.3

MouseEvent.CLICK work prefect it you add this string Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT; to your init class. Because by default in iOS used gestures.

chris.campbell
Legend
February 14, 2012

Forwarded to the iOS team for their review.

Chris

Participating Frequently
February 16, 2012

@berkCakir

Hi,

What is the renderMode in your application - GPU or CPU? Could you please compile a small project that can demonstrate the bug and send it to me at sanika@adobe.com?

Thanks,

Sanika