gift

Download and Install Android, iOS SDK
(Xcode, mobile app development kit on windows)

Over 150,000 downloads of iBuildApp development kit: SDK for iOS and Android. Supporting xcode on windows

Find Mobile Jobs

Need to design or create an app for sales
Need to develop/design an app for sales
Heyyyoo
App that can Call facetime, like, comment, create 20 second videos, share, text, take pictures...
Dodo
A mobile app that helps customers search and compare different services and compare reviews and...
My First app
My first app
clean the river
hello, this an ngo project, we're here to clean the rivers and we have a low budget also we...
Feature Fields Customization

You could develop a Feature which will need no data from end-user.

But in most cases you'll want to get some input (e.g. entered in text fields or selected in dropdowns) from user. This section describes how to write your Feature's XML Configuration.

The current version of structure implemented is 0.1. You can download an XML-Schema declaration from our site.

In 0.1 version there are 6 possible structure elements:

  1. Block element (used to organize elements of types 2-6 in logical groups)
  2. Text field
  3. Textarea field (multiline text input)
  4. Dropdown field
  5. Checkbox
  6. Radiobutton (used in groups of at least two radiobuttons)

General information

The basic XML Configuration must include <fields /> section. If you don't need any information from user - then simply upload a configuration that only contains the code listed below. In this case an end-user will see only our standard "Title" text input, without any additional input elements (Fig. 6.1).

<?xml version="1.0" encoding="UTF-8"?>
<iba:fields iba:version="0.1" xmlns:iba="http://ibuildapp.com/userWidgets/0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ibuildapp.com/userWidgets/0.1 http://ibuildapp.com/module_fields.xsd"/>
Fig. 6.1

Fig. 6.1

The data end-user enters will then be used to create an application data XML configuration which will be passed to your feature from our side.

However an empty fields structure will transform into empty data structure:

<data>
</data>

Every field basically has 3 attributes:

  • name (string, required) - name of XML tag in data configuration which will contain entered data from this element
  • label (string, optional) - text label which will occur to the left of an input element in our App Management Panel
  • caption (string, optional) - text label which will occur next/under an input element

Block

Blocks are used to organize other fields into logical groups

Block tag has one specific attribute:

  • state ("static"/"on"/"off", optional, default "static") - the state of this block: "static" means that it will be present always, "on"/"off" means that user can switch between these blocks; only one non-static block can be selected at one moment

Blocks are different from all the other elements in the way how are they present in data. They have no special tag (so name attribute is not used), but are replaced with all the children elements' tags.

However, this is true only for "static" blocks and block which is "on" currently. If the block is "off" - neither itself, nor his children will be present in data XML.

Block is a kind of root element (only blocks can be inside <fields/> element), so if your feature need at least one input element - then it will have at least one block.


Text

<?xml version="1.0" encoding="UTF-8"?>
<iba:fields iba:version="0.1" xmlns:iba="http://ibuildapp.com/userWidgets/0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ibuildapp.com/userWidgets/0.1 http://ibuildapp.com/module_fields.xsd">
	<iba:block iba:name="block1">
		<iba:text iba:name="textfieldA" iba:label="Textfield label:" iba:caption="Caption goes under the textfield"/>
	</iba:block>
</iba:fields>
Fig. 6.2

Fig. 6.2

<data>
	<textfieldA></textfieldA>
</data>

Textarea

Textarea is all the same as Text except that it can contain multiple lines of text.


Dropdown

<?xml version="1.0" encoding="UTF-8"?>
<iba:fields iba:version="0.1" xmlns:iba="http://ibuildapp.com/userWidgets/0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ibuildapp.com/userWidgets/0.1 http://ibuildapp.com/module_fields.xsd">
	<iba:block iba:name="block1">
		<iba:dropdown iba:name="myDropdown" iba:default="2" iba:label="Dropdown:" iba:caption=""option #2" is selected by default">
			<iba:option iba:value="">please select something</iba:option>
			<iba:option iba:value="1">the first option</iba:option>
			<iba:option iba:value="one more option">option #2</iba:option>
			<iba:option iba:value="the_last">the last one</iba:option>
		</iba:dropdown>
	</iba:block>
</iba:fields>
Fig. 6.3

Fig. 6.3

Fig. 6.4

Fig. 6.4

<data>
	<myDropdown>one more option</myDropdown>
</data>

Checkbox

<?xml version="1.0" encoding="UTF-8"?>
<iba:fields iba:version="0.1" xmlns:iba="http://ibuildapp.com/userWidgets/0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ibuildapp.com/userWidgets/0.1 http://ibuildapp.com/module_fields.xsd">
	<iba:block iba:name="block1" iba:label="Some block">
		<iba:checkbox iba:name="checkboxA" iba:label="1st checkbox" iba:checked="true"/>
		<iba:checkbox iba:name="checkboxB" iba:value="some value" iba:label="2nd checkbox" iba:caption="some descriptive caption"/>
	</iba:block>
</iba:fields>
Fig. 6.5

Fig. 6.5

<data>
	<checkboxA></checkboxA>
</data>

Radio

<?xml version="1.0" encoding="UTF-8"?>
<iba:fields iba:version="0.1" xmlns:iba="http://ibuildapp.com/userWidgets/0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ibuildapp.com/userWidgets/0.1 http://ibuildapp.com/module_fields.xsd">
	<iba:block iba:name="block1" iba:caption="Block's caption">
		<iba:radio iba:name="radiobutton1" iba:value="first" iba:label="Radio label:"/>
		<iba:radio iba:name="radiobutton1" iba:value="2nd" iba:caption="2nd radiobutton has caption"/>
		<iba:radio iba:name="radiobutton1" iba:value="the last one" iba:caption="3rd radiobutton is checked by default" iba:checked="true"/>
	</iba:block>
</iba:fields>
Fig. 6.6

Fig. 6.6

<data>
	<radiobutton1>the last one</radiobutton1>
</data>

More examples!

Example 1

<?xml version="1.0" encoding="UTF-8"?>
<iba:fields iba:version="0.1" xmlns:iba="http://ibuildapp.com/userWidgets/0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ibuildapp.com/userWidgets/0.1 http://ibuildapp.com/module_fields.xsd">
	<iba:block iba:name="b1" iba:caption="Ther are three static blocks">
		<iba:text iba:name="textField" iba:label="Textfield #1:">default text</iba:text>
		<iba:checkbox iba:name="cb1" iba:value="on" iba:checked="true" iba:caption="check me!"/>
	</iba:block>
	<iba:block iba:name="b2" iba:state="static">
		<iba:dropdown iba:name="dropdown" iba:default="0" iba:label="Dropdown field:">
			<iba:option iba:value=""/>
			<iba:option iba:value="a">letter "A"</iba:option>
			<iba:option iba:value="b">letter "B"</iba:option>
		</iba:dropdown>
		<iba:textarea iba:name="multilineText" iba:label="Textarea" iba:caption="Caption under textarea">Some text
It has two lines.</iba:textarea>
	</iba:block>
	<iba:block iba:name="b3">
		<iba:checkbox iba:name="cb2" iba:value="on" iba:caption="don't check me!"/>
		<iba:radio iba:name="radio" iba:value="1st" iba:label="Select one:" iba:caption="1st radio" iba:checked="true"/>
		<iba:radio iba:name="radio" iba:value="2nd" iba:caption="2nd radio"/>
	</iba:block>
</iba:fields>
Fig. 6.6

Fig. 6.7

<data>
	<textField>default text</textField>
	<cb1>on</cb1>
	<dropdown></dropdown>
	<multilineText>Some text
It has two lines.</multilineText>
	<radio>1st</radio>
</data>

Example 2

<?xml version="1.0" encoding="UTF-8"?>
<iba:fields iba:version="0.1" xmlns:iba="http://ibuildapp.com/userWidgets/0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ibuildapp.com/userWidgets/0.1 http://ibuildapp.com/module_fields.xsd">
	<iba:block iba:name="block1" iba:state="on" iba:label="One way:">
		<iba:text iba:name="text1" iba:label="Text 1:">Default for text #1</iba:text>
	</iba:block>
	<iba:block iba:name="block2" iba:state="off" iba:label="Another way:">
		<iba:text iba:name="text2" iba:label="Text 2:">Default for text #2</iba:text>
	</iba:block>
</iba:fields>
Fig. 6.8

Fig. 6.8

<data>
	<text1>Default for text #1</text1>
</data>
Fig. 6.9

Fig. 6.9

<data>
	<text2>Default for text #2</text2>
</data>

Example 3

<?xml version="1.0" encoding="UTF-8"?>
<iba:fields iba:version="0.1" xmlns:iba="http://ibuildapp.com/userWidgets/0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ibuildapp.com/userWidgets/0.1 http://ibuildapp.com/module_fields.xsd">
	<iba:block iba:name="block1">
		<iba:checkbox iba:name="myCheckbox" iba:value="1" iba:checked="true" iba:label="Checkbox:"/>
	</iba:block>
	<iba:block iba:name="block2" iba:state="off" iba:caption="use text">
		<iba:text iba:name="myText" iba:label="Text field:">some default text</iba:text>
	</iba:block>
	<iba:block iba:name="block3" iba:state="on" iba:caption="use textarea">
		<iba:textarea iba:name="myTextarea" iba:label="Textarea field:">some default text in textarea</iba:textarea>
	</iba:block>
	<iba:block iba:name="block4">
		<iba:dropdown iba:name="myDropdown" iba:label="Dropdown">
			<iba:option iba:value="option0">Option 0</iba:option>
			<iba:option iba:value="option1">Option 1</iba:option>
			<iba:option iba:value="option2">Option 2</iba:option>
		</iba:dropdown>
	</iba:block>
</iba:fields>
Fig. 6.10

Fig. 6.10

<data>
	<myCheckbox>1</myCheckbox>
	<myTextarea>some default text in textarea</myTextarea>
	<myDropdown>option0</myDropdown>
</data>