Menu Image Advanced

buzztouch plugin: Menu Image Advanced
By: chris1
Version: v4.0
The Menu Image Advanced plugin builds on the Menu with Image plugin by providing several new features, including clickable header, optional header, platform-specific menu items. Works on both iOS and Android!
works on iOS iOS
works on Android Android
Developer Info
Latest Review
PointerCalypso Kid | 12/08/13 (v3.3)
Awesome plugin and even more awesome support. I was having a problem getting this plugin to work on my self hosted server. Chris put up with my barrage of help requests and fixed the problem in no time. Thank you Chris for a great plugin and great su...
Screenshots
More Information
1The Menu Image Advanced plugin builds on the Menu with Image plugin by providing
several new features. These include:

1) Clickable header image - the header image can now serve as a button to another screen!
2) Optional header image - you can optionally turn off the header image
3) Platform-specific menu items. Show certain menu items on iOS-only or Android-only or
both!



*************************************************************************************
Readme from original Menu with Image plugin:
The Menu with Image plugin displays a header image at the top of a list of navigational
options in rows. Touching each row will load a new screen or action. On each row
you can include an icon or small image, a line of title text, and a description line.

INSTRUCTIONS

Header Image: Prepare an image that is 1536(w) x 720(h) pixels in a png format.
The header image can have a transparent background. The image will automatically
stretch across the width of all screens in portrait mode. In landscape mode,
the image will remain in the same size as the portrait mode. If you use a picture
with dimensions other than 1536 x 720 pixels, the image will be placed at its
maximum size without distortion. There is no need to create the @2x files for your
iOS project. Use all lower case image names (an Android requirement). Do not use
image file names that contain spaces or special characters. It is not necessary to
prepare the @2x images for the iPhone and iPad for this plugin.

Note the instructions below for adding the image to your Xcode or Eclipse project.


Settings in the control panel:

1. Add rows to the menu list: Adding a row to the menu adds a new screen or action to
your project. The Row Title is what will display in the title of the row. Choose a
unique nickname for the screen. As an alternative, with this plugin you can pull menu
items from a remote file using the Screen Data URL. After you add a row, you can add
an icon and a row description.

2. Screen nickname: This field will already be populated, but can be changed in the
event that you receive a warning that two screens have the same name.

3. Top Navigation Bar: Use this to change the default settings.

4. Require Login: Use this require a login for the screen. For advanced buzztouch
developers.

5. Screen Background Color: Select a background color for your screen. You can
enter "clear" for transparent color, "stripes" for the native iOS effect, or a
hexadecimal number. (Do not use the quotes around your entry.)

6. Screen Background Image: Enter your image file name OR the image URL. In addition,
you can choose the scale and position of the image.

7. Header Image: Enter your image file name OR the image URL.

8. List Layout and Color: Modify the default row background color, font title
color, row select color, and row separator color. You can also override the default
list style of square corners with rounded corners, and override the default that
allows for scrolling of the list.

9. List Row Height and Font Size: Modify the default sizes for the row height,
title height, title font size, description font size, list header height, and list
footer height.

10. Screen Data URL: With this plugin you can manually enter individual menu items
or you can pull menu items from a remote file using the Screen Data URL. For
advanced developers.

11. iAd Advertising Option: Set iAd for your iOS projects

*************************************************************************************
Version History

4.0 Updates to make plugin compatible with Buzztouch Core version 4.0.; Misc bug fixes.
3.14 Bug fix on iOS 2.0 projects where it was giving "property background not found" error (1/24/14)
3.13 Added support for both iOS6 and iOS7 when placing header image and table position
3.12 Bug fixes in Android projects related to using URL's for images (1/19/14)
3.11 Display update in iOS projects where description line was indented a few spaces, now is even with title (1/19/14)
3.10 Bug fix in Android projects where clicking on header image was causing a crash
3.9 Bug fix in control panel where Description font size was missing
3.8 Bug fix in Android 3.0 projects related to "activityName" property
3.7 Bug fix where Android projects weren't showing icons
3.6 Bug fix on iOS projects related to row color and hidden nav bars
3.5 Added support for changing font color of description line
3.4 Bug fix - corrects null pointer issue on some Android apps
3.3 Bug fix - adds in support for setting child item properties on self-hosted.
3.2 Bug fix on iOS 2.0 projects for description line
3.1 Added support for row heights
3.0 Support for 3.0 projects
2.1 Bug fix where Android was occasionally giving null pointer exception
2.0 Added header image rotations. Now you can rotate multiple header images on your
menu screen, allowing each one to be 'clickable' to the screen of your choice!

1.0 Initial build

*************************************************************************************

INSTRUCTIONS FOR iOS PROJECT
------------------------
*Drag your image into the BT_Images file in your Xcode project.
The files you need for this plugin are automatically included in the project
package you download from the Download Source Code screen in your control panel.

This plugin requires 4 files to work:
CR_Clickable_menu_image.h
CR_Clickable_menu_image.m
CR_clickable_menuImage_cell_menuList.h
CR_clickable_menuImage_cell_menuList.m



INSTRUCTIONS FOR ANDROID PROJECT
------------------------
*Drag your image into the res -> drawable file in your Android project.
The files you need for this plugin are automatically included in the project package
you download from the Download Source Code screen in your control panel.

This plugin requires 7 files to work:
CR_Clickable_menu_image.java
cr_clickable_screen_menuimage.xml
cr_clickable_row_titledesc.xml
cr_clickable_row_titledescicon.xml
cr_clickable_row_titleicon.xml
cr_clickable_row_titleonly.xml
cr_clickable_menu_row.xml

JSON Data
------------------------

If you manually enter the menu item data, the JSON data for this item in the BT_config.txt
includes a child items array holding individual BT_menuItem items. Each item produces a row.


     "BT_screens":
{"itemId":"EDF6B026899974319C5E364",
"itemType":"Cr_menu_advanced",
"itemNickname":"menuAdvanced",
"rowLayoutType":"1",
"navBarTitleText":"menuAdvanced",
"hasImage":"YES",
"imageFileName":"cr_defaultheader.png",
"headerScreenNicknameToLoad":"calendar",
"headerScreenIDToLoad":"30F69CAFB5DD25352514C57",
"backgroundColor":"#FFFFFF",
"includeAds":"0",
"timeBetweenImages":"5000",
"headerImageTransitionTime":"1500",
"childItems":[
     {"itemId":"D85DD0F0AC751FADC063071",
      "itemType":"BT_menuItem",      
     "loadScreenWithItemId":"009187374E689888E053D83",
     "platform":"Both",
     "titleText":"Test"},

     {"itemId":"7FF7FAB0BF4896CF0B7D849",
     "itemType":"BT_menuItem",
     "loadScreenWithItemId":"30F69CAFB5DD25352514C57",
     "titleText":"Test2",
     "platform":"iOS"},

     {"itemId":"DCCC98913C44E897E166537",
     "itemType":"BT_menuItem",
     "loadScreenWithItemId":"BC40BBD39ECDB8EE897C316",
     "titleText":"Test3", "platform":"Android"}
]}

     "childItems":[
{
     "itemId":"menu_1",
     "itemType":"BT_menuItem",
     "titleText":"This is row 1",
"platform":"Android",
     "loadScreenWithItemId":"1234",
          "descriptionText":"My description text",
          "iconName":"magnify.png",
          "rowAccessoryType":"none" },
{
     "itemId":"menu_2",
     "itemType":"BT_menuItem",
     "titleText":"This is row two",
"platform":"iOS",
     "loadScreenWithItemId":"5678" ,
          "descriptionText":"My description text",
          "iconName":"magnify.png",
          "rowAccessoryType":"none" },
{
     "itemId":"menu_3",
     "itemType":"BT_menuItem",
     "titleText":"This is row three",
"platform":"Both",
     "loadScreenWithItemId":"9012" ,
          "descriptionText":"My description text",
          "iconName":"magnify.png",
          "rowAccessoryType":"none" }
]
}