|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavax.microedition.lcdui.Item
javax.microedition.lcdui.ChoiceGroup
public class ChoiceGroup
A ChoiceGroup is a group of selectable elements intended to be
placed within a
Form
. The group may be created with a mode that requires a
single choice to be made or that allows multiple choices. The
implementation is responsible for providing the graphical representation of
these modes and must provide visually different graphics for different
modes. For example, it might use "radio buttons" for the single choice
mode and "check boxes" for the multiple choice mode.
Note: most of the essential methods have been specified in
the Choice
interface.
Field Summary |
---|
Fields inherited from class javax.microedition.lcdui.Item |
---|
BUTTON, HYPERLINK, LAYOUT_2, LAYOUT_BOTTOM, LAYOUT_CENTER, LAYOUT_DEFAULT, LAYOUT_EXPAND, LAYOUT_LEFT, LAYOUT_NEWLINE_AFTER, LAYOUT_NEWLINE_BEFORE, LAYOUT_RIGHT, LAYOUT_SHRINK, LAYOUT_TOP, LAYOUT_VCENTER, LAYOUT_VEXPAND, LAYOUT_VSHRINK, PLAIN |
Fields inherited from interface javax.microedition.lcdui.Choice |
---|
EXCLUSIVE, IMPLICIT, MULTIPLE, POPUP, TEXT_WRAP_DEFAULT, TEXT_WRAP_OFF, TEXT_WRAP_ON |
Constructor Summary | ||
---|---|---|
ChoiceGroup(String label,
int choiceType)
Creates a new, empty ChoiceGroup, specifying its title and its type. |
||
ChoiceGroup(String label,
int choiceType,
String[] stringElements,
Image[] imageElements)
Creates a new ChoiceGroup, specifying its title, the type of the ChoiceGroup, and an array of Strings and Images to be used as its initial contents. |
Method Summary | ||
---|---|---|
int |
append(String stringPart,
Image imagePart)
Appends an element to the Choice. |
|
void |
delete(int elementNum)
Deletes the element referenced by elementNum. |
|
void |
deleteAll()
Deletes all elements from this ChoiceGroup . |
|
int |
getFitPolicy()
Gets the application's preferred policy for fitting Choice element
contents to the available screen space. |
|
Font |
getFont(int elementNum)
Gets the application's preferred font for rendering the specified element of this Choice . |
|
Image |
getImage(int elementNum)
Gets the Image part of the element referenced by elementNum. |
|
String |
getLabel()
Gets the label of this Item object. |
|
int |
getLayout()
Gets the layout directives used for placing the item. |
|
int |
getSelectedFlags(boolean[] selectedArray_return)
Queries the state of a ChoiceGroup and returns the state of all elements in the boolean array selectedArray_return. |
|
int |
getSelectedIndex()
Returns the index number of an element in the ChoiceGroup that is selected. |
|
String |
getString(int elementNum)
Gets the String part of the element referenced by elementNum. |
|
void |
insert(int elementNum,
String stringElement,
Image imageElement)
Inserts an element into the Choice just prior to the element specified. |
|
boolean |
isSelected(int elementNum)
Gets a boolean value indicating whether this element is selected. |
|
void |
set(int elementNum,
String stringPart,
Image imagePart)
Sets the element referenced by elementNum to the specified element, replacing the previous contents of the element. |
|
void |
setFitPolicy(int fitPolicy)
Sets the application's preferred policy for fitting Choice element
contents to the available screen space. |
|
void |
setFont(int elementNum,
Font font)
Sets the application's preferred font for rendering the specified element of this Choice . |
|
void |
setLabel(String label)
Sets the label of the Item. |
|
void |
setLayout(int layout)
Sets the layout directives for this item. |
|
void |
setSelectedFlags(boolean[] selectedArray)
Attempts to set the selected state of every element in the ChoiceGroup. |
|
void |
setSelectedIndex(int elementNum,
boolean selected)
For ChoiceGroup objects of type MULTIPLE, this simply sets an individual element's selected state. |
|
int |
size()
Gets the number of elements present. |
Methods inherited from class javax.microedition.lcdui.Item |
---|
addCommand, getMinimumHeight, getMinimumWidth, getPreferredHeight, getPreferredWidth, notifyStateChanged, removeCommand, setDefaultCommand, setItemCommandListener, setPreferredSize |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ChoiceGroup(String label, int choiceType)
label
- the item's label (see Item
)choiceType
- either EXCLUSIVE or MULTIPLE
IllegalArgumentException
- if choice type is neither
EXCLUSIVE nor MULTIPLEChoice.EXCLUSIVE
,
Choice.MULTIPLE
,
Choice.IMPLICIT
public ChoiceGroup(String label, int choiceType, String[] stringElements, Image[] imageElements)
Creates a new ChoiceGroup, specifying its title, the type of the ChoiceGroup, and an array of Strings and Images to be used as its initial contents.
The type must be one of EXCLUSIVE or MULTIPLE. The IMPLICIT type is not allowed for ChoiceGroup.
The stringElements array must be non-null and every array element must also be non-null. The length of the stringElements array determines the number of elements in the ChoiceGroup. The imageElements array may be null to indicate that the ChoiceGroup elements have no images. If the imageElements array is non-null, it must be the same length as the stringElements array. Individual elements of the imageElements array may be null in order to indicate the absence of an image for the corresponding ChoiceGroup element. Any elements present in the imageElements array must refer to immutable images.
label
- the item's label (see Item
)choiceType
- EXCLUSIVE or MULTIPLEstringElements
- set of strings specifying the string parts of the
ChoiceGroup elementsimageElements
- set of images specifying the image parts of
the ChoiceGroup elements
NullPointerException
- if stringElements is null
NullPointerException
- if the stringElements array contains
any null elements
IllegalArgumentException
- if the imageElements array is non-null
and has a different length from the stringElements array
IllegalArgumentException
- if choiceType is neither
EXCLUSIVE nor MULTIPLE
IllegalArgumentException
- if any image in the imageElements
array is mutableChoice.EXCLUSIVE
,
Choice.MULTIPLE
,
Choice.IMPLICIT
Method Detail |
---|
public void setLabel(String label)
Item
setLabel
in class Item
label
- the label stringpublic String getLabel()
Item
getLabel
in class Item
public void setLayout(int layout)
Item
It is illegal to call this method if this Item
is contained within an Alert
.
setLayout
in class Item
layout
- a combination of layout directive values for this itemItem.getLayout()
public int getLayout()
Item
getLayout
in class Item
Item.setLayout(int)
public int size()
Choice
Gets the number of elements present.
size
in interface Choice
public String getString(int elementNum)
Choice
Gets the String part of the element referenced by elementNum. The elementNum parameter must be within the range [0..size()-1], inclusive.
getString
in interface Choice
elementNum
- the index of the element to be queried
IndexOutOfBoundsException
- if elementNum is invalidChoiceGroup.getImage(int)
public Image getImage(int elementNum)
Choice
Gets the Image part of the element referenced by elementNum. The elementNum parameter must be within the range [0..size()-1], inclusive.
getImage
in interface Choice
elementNum
- the number of the element to be queried
IndexOutOfBoundsException
- if elementNum is invalidChoiceGroup.getString(int)
public int append(String stringPart, Image imagePart)
Choice
Appends an element to the Choice. The added element will be the last element of the Choice. The size of the Choice grows by one.
append
in interface Choice
stringPart
- the string part of the element to be addedimagePart
- the image part of the element to be added, or null if
there is no image part
IllegalArgumentException
- if the image is mutable
NullPointerException
- if stringPart is nullpublic void insert(int elementNum, String stringElement, Image imageElement)
Choice
Inserts an element into the Choice just prior to the element specified.
The size of the Choice grows by one.
The elementNum parameter must be within the range
[0..size()], inclusive. The index of the last element is size()-1, and
so there is actually no element whose index is size(). If this value
is used for elementNum, the new element is inserted immediately after
the last element. In this case, the effect is identical to
append()
.
insert
in interface Choice
elementNum
- the index of the element where insertion is to occurstringPart
- the string part of the element to be insertedimagePart
- the image part of the element to be inserted,
or null if there is no image part
IndexOutOfBoundsException
- if elementNum is invalid
IllegalArgumentException
- if the image is mutable
NullPointerException
- if stringPart is nullpublic void delete(int elementNum)
Choice
Deletes the element referenced by elementNum. The size of the Choice shrinks by one. It is legal to delete all elements from a Choice. The elementNum parameter must be within the range [0..size()-1], inclusive.
delete
in interface Choice
elementNum
- the index of the element to be deleted
IndexOutOfBoundsException
- if elementNum is invalidpublic void deleteAll()
ChoiceGroup
.
deleteAll
in interface Choice
public void set(int elementNum, String stringPart, Image imagePart)
Choice
Sets the element referenced by elementNum to the specified element, replacing the previous contents of the element. The elementNum parameter must be within the range [0..size()-1], inclusive.
set
in interface Choice
elementNum
- the index of the element to be setstringPart
- the string part of the new elementimagePart
- the image part of the element, or null if there is
no image part
IndexOutOfBoundsException
- if elementNum is invalid
IllegalArgumentException
- if the image is mutable
NullPointerException
- if stringPart is nullpublic boolean isSelected(int elementNum)
Choice
Gets a boolean value indicating whether this element is selected. The elementNum parameter must be within the range [0..size()-1], inclusive.
isSelected
in interface Choice
elementNum
- the index of the element to be queried
IndexOutOfBoundsException
- if elementNum is invalidpublic int getSelectedIndex()
Returns the index number of an element in the ChoiceGroup that is selected. For ChoiceGroup objects of type EXCLUSIVE there is at most one element selected, so this method is useful for determining the user's choice. Returns -1 if there are no elements in the ChoiceGroup.
For ChoiceGroup objects of type MULTIPLE, this always returns -1 because no
single value can in general represent the state of such a ChoiceGroup.
To get the complete state of a MULTIPLE Choice, see getSelectedFlags
.
getSelectedIndex
in interface Choice
public int getSelectedFlags(boolean[] selectedArray_return)
Queries the state of a ChoiceGroup and returns the state of all elements in the boolean array selectedArray_return. NOTE: this is a result parameter. It must be at least as long as the size of the ChoiceGroup as returned by size(). If the array is longer, the extra elements are set to false.
For ChoiceGroup objects of type MULTIPLE, any number of elements may be selected and set to true in the result array. For ChoiceGroup objects of type EXCLUSIVE, exactly one element will be selected, unless there are zero elements in the ChoiceGroup.
getSelectedFlags
in interface Choice
selectedArray_return
- array to contain the results.
IllegalArgumentException
- if selectedArray_return is shorter
than the size of the ChoiceGroup.
NullPointerException
- if selectedArray_return is null.public void setSelectedIndex(int elementNum, boolean selected)
For ChoiceGroup objects of type MULTIPLE, this simply sets an individual element's selected state.
For ChoiceGroup objects of type EXCLUSIVE, this can be used only to
select an element. That is, the selected
parameter must
be true
. When an element is selected, the previously
selected element is deselected. If selected
is
false
, this call is ignored.
For both list types, the elementNum parameter must be within the range [0..size()-1], inclusive.
setSelectedIndex
in interface Choice
elementNum
- the number of the element. Indexing of the elements is zero-based.selected
- the new state of the element true=selected, false=not selected.
IndexOutOfBoundsException
- if elementNum is invalidpublic void setSelectedFlags(boolean[] selectedArray)
For ChoiceGroup objects of type MULTIPLE, this sets the selected state of every element in the Choice. An arbitrary number of elements may be selected.
For ChoiceGroup objects of type EXCLUSIVE, exactly one array
element must have the value true
. If no element is true, the first element
in the Choice will be selected. If two or more elements are true, the
implementation will choose the first true element and select it.
setSelectedFlags
in interface Choice
selectedArray
- an array in which the method collect the selection status
IllegalArgumentException
- if selectedArray is shorter than the
size of the ChoiceGroup.
NullPointerException
- if the selectedArray is null.public void setFitPolicy(int fitPolicy)
Choice
element
contents to the available screen space. The set policy applies for all
elements of the Choice
object. Valid values are
Choice.TEXT_WRAP_DEFAULT
, Choice.TEXT_WRAP_ON
,
and Choice.TEXT_WRAP_OFF
. Fit policy is a hint, and the
implementation may disregard the application's preferred policy.
RIM Implementation Notes
On BlackBerry devices, the implementation does disregard the application's preferred policy
and always applies Choice.TEXT_WRAP_ON
fit policy, so that text element contents is wrapped
to multiple lines if necessary to fit available content space.
The implementation disregards the application's preferred policy,
conforming with the MIDP 2.1 specification that states for the method ChoiceGroup.setFitPolicy(int)
:
"Fit policy is a hint, and the implementation may disregard the application's preferred policy."
setFitPolicy
in interface Choice
fitPolicy
- preferred content fit policy for choice elements
IllegalArgumentException
- if fitPolicy
is invalidChoiceGroup.getFitPolicy()
public int getFitPolicy()
Choice
element
contents to the available screen space. The value returned is the
policy that had been set by the application, even if that value had
been disregarded by the implementation.
getFitPolicy
in interface Choice
Choice.TEXT_WRAP_DEFAULT
, Choice.TEXT_WRAP_ON
, or
Choice.TEXT_WRAP_OFF
ChoiceGroup.setFitPolicy(int)
public void setFont(int elementNum, Font font)
Choice
.
An element's font is a hint, and the implementation may disregard
the application's preferred font.
The elementNum
parameter must be within the range
[0..size()-1]
, inclusive.
The font
parameter must be a valid Font
object or null
. If the font
parameter is
null
, the implementation must use its default font
to render the element.
setFont
in interface Choice
elementNum
- the index of the element, starting from zerofont
- the preferred font to use to render the element
IndexOutOfBoundsException
- if elementNum
is invalidChoiceGroup.getFont(int)
public Font getFont(int elementNum)
Choice
. The
value returned is the font that had been set by the application,
even if that value had been disregarded by the implementation.
If no font had been set by the application, or if the application
explicitly set the font to null
, the value is the default
font chosen by the implementation.
The elementNum
parameter must be within the range
[0..size()-1]
, inclusive.
getFont
in interface Choice
elementNum
- the index of the element, starting from zero
IndexOutOfBoundsException
- if elementNum
is invalidChoiceGroup.setFont(int elementNum, Font font)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 1999-2011 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Java is a trademark of Oracle America Inc. in the US and other countries.
Legal