ActionPack

ActionPack running on an iPad

ActionPack running on an iPad

Works With:

apple_logo google_android

ActionPack Business

High Quality, Professional components to Energize your Mobile App


  • Includes: ActionTray, DownloadManager, NavBar & ActionViewSplitter
  • ActionViews - Low level component set
  • ActionTable - Cross platform table/list manager
  • ActionToast - Toast for iOS
  • And many more functions and features

$199

About ActionPack

In today's world of ever expanding mobile devices, developers face a challenge when creating high quality, engaging and unique user experiences that not only look great but also work great across the multitude of phones, tablets, and even different operating systems.

That's where Appracatappra comes in. Our ActionPack suite is an expanding collection of professional, highly customizable components that provide a solid foundation to develop rich, visually interesting, yet high performance cross-platform mobile applications quickly.

With ActionPack, we do all the heavy lifting for you, allowing you to spend more time focused on making your mobile app great and less on the details of implementation.

Native Cross-Platform

Nearly every ActionComponent included in the ActionPack suite is fully cross-platform between the iOS and Android mobile opperating systems and each ActionComponent renders natively, taking on the look and feel of the OS they are running on. This ensures your mobile application looks and works its best on each system supported.

Great care was taken to keep the calling structures the same across platforms, thus allowing for the maximum of code reuse. In fact, the same code used to populate a component on one OS can be used, many times totally unchanged, on another. Again reducing the amount of time and code required.

Highly Customizable and Pixel Perfect

Because each ActionComponent in the ActionPack suite is rendered completely in vectors they are not only resolution independent, but they are also highly customizable.

By adjusting the values of the component's appearance property, you have full control of nearly every aspect of its appearance. In times when that's not enough, many of the components allow you to take total control and custom render elements of their UI.

And because our ActionComponents are built with vectors they also scale perfectly to match the screen size of any mobile device they are run on, from phone to tablet, which ensures your mobile application will render pixel perfect every time.

iOS 7 Ready

iOS 7 represents the single biggest change to the look and feel of iOS since Apple origionally released it and each ActionComponent is ready to support it. Simply call the Flatten method of the component's appearance property and the component will automatically adjust itself to the iOS 7 design aethstetics.

And as always, you have total control over the components appearance so you can always tweak the results of the Flatten method to ensure the component fits seamlessly into your mobile app's look and feel.

The Flatten method is also supported on the Android OS to assist in creating consistent cross-platform mobile apps.

Fully Documented

Every ActionComponent included in the ActionPack suite features a fully documented API so you'll never have to guess what a method or property is used for.

And as an added benefit, the sample app that comes with the Business or Enterprise version of the ActionPack has a local copy of the API reference along with all of the documentation for each component in the suite with a nifty index. It can be compiled and placed on an iPad or Android based tablet and used as a reference while coding.

Did We Mention We're Expanding?

As stated above, the ActionPack suite is expanding… Meaning, ActionPack isn't finished growing yet, and more components will continually be added during the comming year. In fact, we currently have several new components in the works (many nearing completion) and hope to have them in the suite and in the store before the end of December 2013.

If you purchase any version of the ActionPack suite you will automatically recieve the new components for free as new version of the suite are released during your year's subscription.

Included Components

The ActionPack suite includes the following ActionComponents:


ActionAlert

ActionAlert is a highly customizable, cross platform alert and notification system for iOS and Android. Present both modal and non-modal alerts, dialog boxes and notifications with a minimal of code to quickly inform the user of the state of a process or alert them of a situation that needs their attention in your mobile app.

ActionAlert makes it easy include images, activity indicators, progress bars, and interactive buttons to a notification, while providing for a maximum of code reuse across platforms. In many cases the same code used to display an ActionAlert on one platform can be used virtually unchanged on another which not only saves time, but improves code maintainability.

For more detailed on ActionAlert, please see the About and Getting Started documetation here


ActionTable

[Business/Enterprise Only]
ActionTable is a custom Table View Controller for iOS and custom ListView for Android that supports a range of features that allow you to create complex Table/List Views quickly, all with a minimum of code. By implementing the RequestData event on the ActionTable's dataSource property you can quickly populate any ActionTable without having to create custom classes.

The ActionTable UIActionTableItem class defines several helper function that make attaching accessory views a snap so you can quickly add things like switches and buttons to your table items without have to code them by hand. ActionTables make easy work of implementing your mobile apps settings.

The following helper function are available:

  • AddAccessorySwitch
  • AddAccessoryStepper
  • AddAccessorySlider
  • AddAccessoryActionImageView
  • AddAccessoryButton
  • AddAccessoryTextField

For more detailed on ActionTable, please see the About and Getting Started documetation here


ActionToast

ActionToast is simple, quick, single line popup notification system for iOS in the style of Toast for Android. ActionToast implements the same calling structure and styles as Toast for Android to assist in cross platform development.

Need to quickly catch a user's attention with a single line notification? ActionToast makes it easy. Either create an object of type UIActionToast and fill out it's properties or use the static MakeText method of the ActionToast class to create a popup. Next call the Show method to display it, just like in Xamarin.Android.

For more detailed on ActionToast, please see the About and Getting Started documetation here


ActionTray

ActionTray is a dockable, customizable, slide-out, tray view controller for iOS and Android that can be attached to the top, left, bottom or right sides of the screen. ActionTray supports three tray types:

  • Draggable - The user can drag the tray out from the edged anywhere between its open and closed positions or double tap it to snap between open and closed.
  • Popup - The tray will snap between its open and closed positions when its Drag Tab is touched
  • AutoClosingPopup - Just like the Popup tray but it will also close if the user taps its content area

You can place individual ActionTrays along any edge of the screen or place several ActionTrays togehter and attach them to an ActionTrayManager to control them as a group and use them like palettes or menus. The ActionTrayManager provides events to respond to user interaction in any of the trays it controls and it automatically ensures that only one tray in the group is open at a time.

For more detailed on ActionTray, please see the About and Getting Started documetation here


ActionView

[Business/Enterprise Only]
ActionView is a collection of custom view controls and helper methods for iOS and Android that take the grunt work out of common user interface tasks. Create stunning experiences with easy by using ActionViews directly or use them as the basis of your own custom controls. If fact, ActionViews are the foundation of our other ActionComponents in the ActionPack suite.

Creating immersive, captivating mobile user interfaces usually means writing similar, repetative code for common interface tasks. At Appracatappra we say, "Why reinvent the wheel?" That's why we created our ActionView low-level tool suite. They encapsulate the logic to handle common tasks such as tapping, moving, rotating and dragging so you can focus on making your mobile app great and not the details of implementation.

ActionView Subcomponents

ActionView is composed of the following subcomponents:

  • UIActionImage - This static class contains several helper functions for working with UIImages including the ability to detect an iPhone 5 (or greater) images in the form name-568@2x.ext and automatically load them in the place of name.ext or name@2x.ext files and helper routines for easily dealing with rotation.
  • UIActionImageView - Is a custom UIImageView that contains many useful built-in features such as being draggable with optional constraints for it's X and Y axis, user interaction events such as touched, moved and released, and provides methods to make moving, rotating and resizing easier and with less code.
  • UIActionLabel - Is a custom UILabel that containes events such and touched and released and helper methods to easily handle moving, rotating, and resizing.
  • UIActionView - Is a custom UIView that contains many useful built-in features such as being draggable with optional constraints for it's X and Y axis, user interaction events such as touched, moved and released, and provides methods to make moving, rotating and resizing easier and with less code.
  • UIActionViewController - Is an Android component for working with Views that have been inflated from a .axml file by providing a place to hold the code to handle any UI Widgets so you don't have to put it in the Activity class that is loading the view or create a new activity to support it. Create a child of this class, override the Initialize method and place the code to handle your UI Widgets there.
  • UIActionWebView - Is a custom UIWebView that contains many useful built-in features such as being draggable with optional constraints for it's X and Y axis, user interaction events such as touched, moved and released, and provides methods to make moving, rotating and resizing easier and with less code. Helper methods such as LoadFile and LoadURL make working with web views easier and with less code.
  • iOSDevice - Is a static, helper class that returns information about the iOS device your Xamarin.iOS app is running on.

For more detailed on ActionView, please see the About and Getting Started documetation here


ActionViewSplitter

ActionViewSplitter is a draggable, customizable divider between two views that can automatically handle resizing or moving the views attached to it. The ActionViewSplitter supports both horizontal and vertical orientations and has several options to control its behavior such as:

  • minimumBefore - Sets the minimal amount of space for the view before the splitter
  • minimunAfter - Sets the minimal amount of space for the view after the splitter
  • doubleTapAction - Can be set to move the splitter to the minimum before or after position
  • fullSplitterDraggable - Makes the entire splitter draggable and not just its dragThumb area

ActionViewSplitter is fully customizable with user definable appearances for every element of its UI and you can control the location of the dragThumb as: Top or Left, Middle, Bottom or Right (depending on the ActionViewSplitter's orientation).

For more detailed on ActionViewSplitter, please see the About and Getting Started documetation here


DownloadManager

DownloadManager handles the downloading of one or more files from the internet using either HTTP or FTP protocols. All downloads take place in a background thread so your mobile application's interface remains responsive.

DownloadManager provides several events for both the overall batch and for individual files that can be responded to such as:

  • DownloadError
  • DownloadCanceled
  • DowloadFileStarted
  • DownloadFileCompleted
  • FileDownloadProgressPercent
  • OverallDownloadProgressPercent
  • AllDownloadsCompleted

For more detailed on DownloadManager, please see the About and Getting Started documetation here


NavBar

NavBar is a left-side, icon based, customizable navigation strip and view controller for tablet based iOS and Android devices that supports several different types of user definable buttons such as:

  • View - Handles hiding and showing an attached view
  • AutoDisposingView - Handles hiding and showing an attached view and removes the view from memory when it loses focus
  • Tool - A button that has a user defined action when touched
  • Notification - A non-touchable icon displayed in the bar

NavBar has three separate regions that you can add buttons to: Top, Middle and Bottom. NavBar automatically handles the spacing and placement of buttons within the regions and responds to UIInterfaceOrientation events with smoothly animated transitions.

Note: While Navbar will work on small screen devices such as iPhones, iPod Touches and Android phones, it was designed for tablet devices as may not provide the best User Experience in these situations.

For more detailed on NavBar, please see the About and Getting Started documetation here


Trial Versions

The Trial version of ActionPack is fully functional but includes Toast style popups within the individual components. The fully licensed version removes these popups.

Some screenshots created with PlaceIt.

ActionPack Component Suite

Getting Started with the ActionPack

The ActionPack component suite is composed of several of our high quality, professional ActionComponents for Xamarin Studio. To use any of the ActionPack components in your mobile application include the ActionPack.iOS or ActionPack.Android library and reference the one or more of following using statement in your C# code:

using Appracatappra.ActionComponents.ActionAlert;
using Appracatappra.ActionComponents.ActionTable;
using Appracatappra.ActionComponents.ActionToast;
using Appracatappra.ActionComponents.ActionTray;
using Appracatappra.ActionComponents.ActionView;
using Appracatappra.ActionComponents.ActionViewSplitter;
using Appracatappra.ActionComponents.Device;
using Appracatappra.ActionComponents.DownloadManager;
using Appracatappra.ActionComponents.NavBar;

The ActionPack library was designed to be modular so include as little or as much as necessary for your mobile app.

Quick Examples

The following sections include quick usage examples for each of the ActionComponents included in the ActionPack:


ActionAlert

Displaying a Simple ActionAlert

ActionAlerts were designed to be displayed with a minimum of code and the quickest and easiest way to create and display one is by calling one of the many preset Static methods of the UIActionAlert class such as:

iOS Example

// Default Alert with icon, title, description and OK button
UIActionAlert.ShowAlertOK (UIImage.FromFile ("ActionAlert_57.png"), "ActionAlert", "A cross platform Alert, Dialog and Notification system for iOS and Android.");

Android Example

// Default Alert with icon, title, description and OK button
UIActionAlert.ShowAlertOK (this, Resource.Drawable.ActionAlert_57, "ActionAlert", "A cross platform Alert, Dialog and Notification system for iOS and Android.");

For more complete control over the ActionAlert create a new instance by calling one of its constructors and adjust its properties and settings manually via code.

For more detailed instructions on using ActionAlert, please see the Getting Started documetation here


ActionTable

Creating the ActionTable

In iOS, an ActionTable can either be defined in a .xib file or directly in code such as:

UIActionTableViewController actionTable;
...

// Create new ActionTable and set it's style
actionTable = new UIActionTableViewController (UITableViewStyle.Grouped, new RectangleF(0,0,360,480));
AddSubview (actionTable.TableView);
actionTable.cellSelectionStyle = UITableViewCellSelectionStyle.None;

On Android either define your ActionTable in a .axml file or again in code:

private UIActionTableViewController settingsList;
...

// Gain Access to all views and controls in our layout
actionTable = FindViewById<UIActionTableViewController> (Resource.Id.settingList);

//---------------------------------------------
// Configure the settings list
//---------------------------------------------
actionTable.activity = this;

WARNING! You must set the activity property of you ActionTable to the Activity that it is running in first, before using any other properties or methods else it may fail to run or render correctly!

Providing Data

To provide data for your ActionTable, respond to the RequestData event of the ActionTable's dataSource property. You will create a collection of one or more UIActionTableSections , each containing one or more UIActionTableItems that will define the structure and type of your table such as:

// Wire-up data request event
actionTable.dataSource.RequestData += (dataSource) => {
    // Populate table with data
    var section = dataSource.AddSection("Section One");

    // Add items to table
    section.AddItem("Item 1",true);
    section.AddItem("Item 2",true);
};

Finally, call the ActionTable's LoadData() method to display the table with all of the data that you have defined. Example:

// Display table
actionTable.LoadData ();

For more detailed instructions on using ActionTable, please see the Getting Started documetation here


ActionToast

Creating a ActionToast Message

The quickest way to create an display an ActionToast message is to use the static MakeText method of the UIActionToast class to quickly assemble your popup, then display it:

using Appracatappra.ActionComponents.ActionToast;
...

// Display message to user
UIActionToast.MakeText("My message", UIActionToastLength.Long).Show ();

Multiple constructors exist for the MakeText method that allow for customization of the popup such as display time, location, appearance, etc.

For more detailed instructions on using ActionToast, please see the Getting Started documetation here


ActionTray

Minimal Setup Required

Whether created as a .xib file in Xcode for iOS or the designer for Android or built directly from C# code the following two properties must be set before the ActionTray is displayed:

// These values MUST be set in code before the view is displayed
tray.trayType = UIActionTrayType.Popup;
tray.orientation = UIActionTrayOrientation.Right;

Failure to set the above lines before display can result in an ActionTray that is drawn and/or behaves incorrectly.

If the tray is being created completely in C# code, set the above lines after you have set the tray's Frame size and added the tray to the parent View so that it can correctly calculate its open and closed positions.

Working with ActionTrays in Android

ActionTray was designed to make adding it to a project super easy. Start an Android project in Xamarin Studio, switch to the Android Designer and add a RelativeLayout to be the parent of the ActionTray. Add one or more Views, switch to the Source view and change their type to Appracatappra.ActionComponents.ActionTray.UIActionTray.

Note: The ActionTray MUST be hosted inside a RelativeView or it will not work correctly! The ActionTray itself is a type of RelativeLayout so add any UI Components to the tray and position them within it using RelativeLayout metrics.

Configuring an ActionTray

Aside from the base, minimal setup above, there are several features that you can use to customize not only the look but the feel of your action trays. Here is an example in iOS for an ActionTray added to a .xib file:

// Set tray type
leftTray.orientation = UIActionTrayOrientation.Left;
leftTray.tabLocation=UIActionTrayTabLocation.BottomOrRight;
leftTray.frameType=UIActionTrayFrameType.EdgeOnly;
leftTray.tabType=UIActionTrayTabType.IconAndTitle;

// Style tray
leftTray.appearance.background=UIColor.LightGray;
leftTray.appearance.frame=UIColor.DarkGray;
leftTray.icon=UIActionImage.FromFile ("Images/icon_calendar.png");
leftTray.title="Events";
leftTray.CloseTray (false);

And the same code for Android for an ActionTray created in the designer:

// Gain Access to all views and controls in our layout
UIActionTray leftTray = FindViewById<UIActionTray> (Resource.Id.trayLeft);
...

// Setup the left side tray
leftTray.trayType = UIActionTrayType.Draggable;
leftTray.orientation = UIActionTrayOrientation.Left;
leftTray.tabLocation = UIActionTrayTabLocation.BottomOrRight;
leftTray.frameType = UIActionTrayFrameType.EdgeOnly;
leftTray.tabType = UIActionTrayTabType.IconAndTitle;

// Style tray
leftTray.appearance.background = Color.Gray;
leftTray.appearance.border = Color.Red;
leftTray.icon = Resource.Drawable.icon_calendar;
leftTray.title = "Events";
leftTray.appearance.tabAlpha=100;
leftTray.CloseTray (false);

For more detailed instructions on using ActionTray, please see the Getting Started documetation here


ActionView

Using Dragable

Several of the elements of ActionView feature built-in drag handling with optional constraints on the X and/or Y axis. In the following example a UIActionImageView has been added to our .xib file. In code we will make it draggable, lock it's Y coordinate in place and allow the X coordinate to be drug within a given range:

// Set thumb to be draggable and apply limits to it's movement
dragThumb.draggable = true;
dragThumb.xConstraint.constraintType = UIActionViewDragConstraintType.Constrained;
if (iOSDevice.isPad) {
    dragThumb.xConstraint.minimumValue = 140f;
    dragThumb.xConstraint.maximumValue = 920f;
} else {
    dragThumb.xConstraint.minimumValue = 58f;
    dragThumb.xConstraint.maximumValue = 272f;
}
dragThumb.yConstraint.constraintType = UIActionViewDragConstraintType.Locked;

The drag controls work exactly the same on Android as well.

User Interaction

Several of the elements of ActionView were designed to handle interaction via their touched, moved, or released events. The following is an example of handling a user touch on an UIActionLabel added to our .xib file:

// Show graphic when the label is touched
labelWhyChoose.Touched += (view) => {
    // Define Animation
    UIView.BeginAnimations("ShowWhyChoose");
    UIView.SetAnimationDuration(1.0f);

    // Animate property
    whyChooseBox.Alpha=1.0f;

    // Execute Animation
    UIView.CommitAnimations();
};

For more detailed instructions on using ActionView, please see the Getting Started documetation here


ActionViewSplitter

Optimum Splitter Size

Whether creating an ActionViewSplitter in Xcode via a .xib file or direct in C#, we suggest the optimum splitter size of 30 pixels wide for Vertical splitters or 30 pixels high for Horizontal splitters. Gives gives enough "finger room" to keep the splitter touchable and draggable. However, thicker splitters can be created if so desired.

Adding an ActionViewSplitter

ActionViewSplitter was designed to be quickly and easily added to an iPad, iPhone or Universal Xamarin mobile app project. Either add a UIView to your project in Xcode and switch it's type to UIViewSplitter or create the splitter completely in C# code and add it to your Superview.

Based on how you create your splitter, it will automatically decide if it is a Horizontal or Vertical ActionViewSplitter.

Next create two subviews of any type and add them to the project for your ActionViewSplitter to controll. One on either side of the splitter touching trailing and leading edge of the ActionViewSplitter and pinned to the edge of the Superview they all belong to.

Attaching Child Views

In C# code, attach the two view that you want your view splitter to control and optionally set the minimum space before and the minimum space after the ActionViewSplitter. Example:

// Attach views
viewSplitter.viewBefore=leftView;
viewSplitter.minimumBefore = 0f;
viewSplitter.viewAfter = rightView;
viewSplitter.minimumAfter = 150F;

For more detailed instructions on using ActionViewSplitter, please see the Getting Started documetation here


DownloadManager

Adding Files to the Download Queue

To use DownloadManager add one or more DownloadItems representing files to be downloaded from the internet to your DownloadManager class.

iOS Example:

//Specify the directory to download the file to
string directory=Environment.GetFolderPath(Environment.SpecialFolder.Personal);

//Queue up a file to download: Source URL, Directory to download to and optionally renaming the file
_downloadManager.QueueFile("http://appracatappra.com/wp-content/plugins/download-monitor/download.php?id=4",directory,"NDA.pdf");

Android Example:

// Create path to hold downloaded files
string directory = System.Environment.GetFolderPath (System.Environment.SpecialFolder.Personal);
... 

// Queue up files to download
downloadManager.QueueFile ("http://appracatappra.com/wp-content/uploads/et_temp/ssh-140751_232x117.jpg",directory);
downloadManager.QueueFile ("http://appracatappra.com/wp-content/uploads/et_temp/4-TD-web-5-662620_960x332.png",directory);

Starting the Download

After you have set the collection of files to download and wired up the user feedback, use the following code to start your downloads.

iOS Example:

//Start the download process
_downloadManager.StartDownloading();

Android Example:

// Start the download process
ThreadPool.QueueUserWorkItem((callback) =>{
    downloadManager.StartDownloading();
});

For more detailed instructions on using DownloadManager, please see the Getting Started documetation here


NavBar

Adding NavBar to your Mobile App

NavBar was designed to make adding it to your mobile application in Xamarin Studio easy.

For iOS

Add a UIView to your project in a .xib file using Xcode then switch it's type to UINavBar. Ensure that you pin the NavBar to the left hand side of the screen and make it's width exactly 80 pixels wide.

Warning! Failing to do either of these will result in a NavBar that will not look or function correctly!

For Android

Open your Main.axml file in Xamarin Studio, insert a RelativeLayout then insert a View into it, make it 80 pixels wide and pin it to the left hand side of the RelativeLayout, make its Height fill the parent and change its Class to Appracatappra.ActionComponents.NavBar.UINavBar in the Source view.

Next add a few sub views and controls to the RelativeLayout under your NavBar, this is done so that the NavBar can "float above and overlap" the sub views that it controls and draw the shadow and NavBarPointer over those views.

Warning!: Your UINavBar MUST be hosted inside of a RelativeLayout or an error will be thrown and you must set your sub views visibility to gone initally for the NavBar to properly control them. The NavBar is itself a type of custom RelativeLayout.

Adding View Buttons to your NavBar

Once you have created your NavBar and added it to your view you can add buttons that will link to views that the NavBar will automatically control and bring to the surface when tapped by the end user.

iOS Example:

//---------------------------------------------
// Add buttons to the top of the bar
//---------------------------------------------
// The first button added to the top collection will automatically be selected
UINavBarButton home = navBar.top.AddButton (UIImage.FromFile ("Icons/house.png"), true, false);

// Wire up request for this button's view
home.RequestNewView += responder => {
    // Attaching a view to a button will automatically display it under the NavBar
    home.attachedView = homeView;
};

navBar.top.AddAutoDisposingButton (UIImage.FromFile ("Icons/bar-chart.png"), true, false).RequestNewView += responder => {
    // Build new view from a .xib file and attach it to the button it will automatically
    // be displayed under the NavBar
    responder.attachedView = BarChartView.Factory (this);
};

//-----------------------------------------
// Add buttons to the bottom of the bar
//-----------------------------------------
navBar.bottom.AddButton (UIImage.FromFile ("Icons/gear.png"), true, false).RequestNewView += responder => {
    responder.attachedView = SettingsView.Factory (this, navBar);
};

Android Example:

// Gain Access to all views and controls in our layout
navBar = FindViewById<UINavBar> (Resource.Id.navBar);
viewHome = FindViewById<ImageView> (Resource.Id.viewHome);

//---------------------------------------------
// Add buttons to the top of the bar
//---------------------------------------------
// The first button added to the top collection will automatically be selected
UINavBarButton home = navBar.top.AddButton(Resource.Drawable.house,true,false);

// Wire up request for this button's view
home.RequestNewView += responder => {
    // Attach view to the button
    responder.attachedView=viewHome;
};

// Add Bar Chart
navBar.top.AddAutoDisposingButton (Resource.Drawable.barchart,true,false).RequestNewView += (responder) => {
    // Bring view into existance
    viewBarChart = (View)LayoutInflater.Inflate (Resource.Layout.ViewBarChart,null);

    // Attach view to the button
    responder.attachedView = viewBarChart;
};

//-----------------------------------------
// Add buttons to the bottom of the bar
//-----------------------------------------
navBar.bottom.AddAutoDisposingButton (Resource.Drawable.gear, true, false).RequestNewView += responder => {
    // Bring view into existance
    viewSettings = (View)LayoutInflater.Inflate (Resource.Layout.ViewSettings,null);

    // Attach view to the button
    responder.attachedView=viewSettings;

    // grab show/hide button
    showHideNavBar = FindViewById<Button> (Resource.Id.showHideButton);

    //-----------------------------------------
    // Wireup button action
    //-----------------------------------------
    if (showHideNavBar!=null) {
        showHideNavBar.Click += (sender, e) => {
            //Is the NavBar visible?
            navBar.Hidden=(!navBar.Hidden);
        };
    }
};

For more detailed instructions on using NavBar, please see the Getting Started documetation here


Example Apps

For full examples of using any of the ActionComponents in the ActionPack component suite please see the APTest.iOS or APText.Android example app included with this component or APTestIndy.iOS or APTextIndy.Android example app for the Indy version of the ActionPack.

See the API documentation for any of the ActionComponents in the ActionPack component suite for a complete list of features and their usage.

The APTest.iOS or APText.Android example app that comes with the Business or Enterprise version of the ActionPack has the added benefit of having a local copy of the API reference along with all of the documentation for each component in the suite with a nifty index. It can be compiled and placed on an iPad or Android based tablet and used as a reference while coding.

Note: The example apps were designed to work best with iPad and 7" Android Tablets.

Trial Versions

The Trial version of ActionPack is fully functional but includes Toast style popups within the individual components. The fully licensed version removes these popups.

Other Resources

Indy

Independent Developers

  • ActionTable
  • ActionToast
  • ActionTray
  • ActionView
  • ActionViewSplitter
  • DownloadManager
  • Navbar
  • Priority Support
$9995
Buy

Business

Small Business

  • ActionTable
  • ActionToast
  • ActionTray
  • ActionView
  • ActionViewSplitter
  • DownloadManager
  • Navbar
  • Priority Support
$19995
Buy

Enterprise

24/7 Support

  • ActionTable
  • ActionToast
  • ActionTray
  • ActionView
  • ActionViewSplitter
  • DownloadManager
  • Navbar
  • Priority Support
$49995
Buy

ActionPack for iOS

You can find the full API documentation for ActionPack iOS here:

http://appracatappra.com/api/ios/

 

ActionPack for Android

You can find the full API documentation for ActionPack Android here:

http://appracatappra.com/api/android/

At Appracatappra we take quality very seriously and always strive to provide the easiest to use and most trouble free Xamarin Studio Components available.

If you are experiencing an issue with one of our components or have a question about it's usage please either visit our support forum or fill out the request form below:

Your Name (required)

Your Email (required)

Subject

Component:

Device:

iPhone/iPod TouchiPadAndroid PhoneAndroid Tablet

OS Version:

Type:

Question/Issue

Verification:

captcha

Please enter the text above: