Mobile Zone is brought to you in partnership with:

Shay is a DZone MVB and is not an employee of DZone and has posted 22 posts at DZone. View Full User Profile

Navigating Between Pages in ADF Mobile with Swipe Gestures

10.04.2013
| 2968 views |
  • submit to reddit

Mobile users are getting used to specific touch gestures, such as swipe, in their applications. And sometimes you might want to incorporate those gestures as a means for navigating between pages in your ADF Mobile application.

You can do this by using the amx:actionListener component and having it bind to a method in your backing bean.

The basic ingredients:

In an AMX page, add an actionListner to a component. For example:

<amx:listItem id="li1">
            <amx:outputText value="#{row.name}" id="ot3"/>
            <amx:actionListener id="al1" type="swipeLeft" binding="#{viewScope.ma.navigateMethod}"/>
          </amx:listItem>

The binding edit function in the property inspector can help you create the above managed bean (ma).

In the managed bean, you can code this:

 public void navigateMethod(ActionEvent actionEvent) {
        AdfmfContainerUtilities.invokeContainerJavaScriptFunction(AdfmfJavaUtilities.getFeatureName(), "adf.mf.api.amx.doNavigation", new Object[] { "go" });
    } 

In your taskflow for the feature, have a navigation rule like this:

<control-flow-case id="__3">
        <from-outcome>go</from-outcome>
        <to-activity-id>camera</to-activity-id>
      </control-flow-case>

Now, with a swipe to the right on the list item, you'll navigate to the camera page.

Published at DZone with permission of Shay Shmeltzer, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)