public
class
Keyboard
extends Object
| java.lang.Object | |
| ↳ | android.inputmethodservice.Keyboard |
Loads an XML description of a keyboard and stores the attributes of the keys. A keyboard consists of rows of keys.
The layout file for a keyboard contains XML that looks like the following snippet:
<Keyboard
android:keyWidth="%10p"
android:keyHeight="50px"
android:horizontalGap="2px"
android:verticalGap="2px" >
<Row android:keyWidth="32px" >
<Key android:keyLabel="A" />
...
</Row>
...
</Keyboard>
Nested classes | |
|---|---|
class |
Keyboard.Key
Class for describing the position and characteristics of a single key in the keyboard. |
class |
Keyboard.Row
Container for keys in the keyboard. |
XML attributes | |
|---|---|
android:horizontalGap |
Default horizontal gap between keys. |
android:keyHeight |
Default height of a key, in pixels or percentage of display width. |
android:keyWidth |
Default width of a key, in pixels or percentage of display width. |
android:verticalGap |
Default vertical gap between rows of keys. |
Constants | |
|---|---|
int |
EDGE_BOTTOM
|
int |
EDGE_LEFT
|
int |
EDGE_RIGHT
|
int |
EDGE_TOP
|
int |
KEYCODE_ALT
|
int |
KEYCODE_CANCEL
|
int |
KEYCODE_DELETE
|
int |
KEYCODE_DONE
|
int |
KEYCODE_MODE_CHANGE
|
int |
KEYCODE_SHIFT
|
Public constructors | |
|---|---|
Keyboard(Context context, int xmlLayoutResId)
Creates a keyboard from the given xml key layout file. |
|
Keyboard(Context context, int xmlLayoutResId, int modeId, int width, int height)
Creates a keyboard from the given xml key layout file. |
|
Keyboard(Context context, int xmlLayoutResId, int modeId)
Creates a keyboard from the given xml key layout file. |
|
Keyboard(Context context, int layoutTemplateResId, CharSequence characters, int columns, int horizontalPadding)
Creates a blank keyboard from the given resource file and populates it with the specified characters in left-to-right, top-to-bottom fashion, using the specified number of columns. |
|
Public methods | |
|---|---|
int
|
getHeight()
Returns the total height of the keyboard |
List<Keyboard.Key>
|
getKeys()
|
int
|
getMinWidth()
|
List<Keyboard.Key>
|
getModifierKeys()
|
int[]
|
getNearestKeys(int x, int y)
Returns the indices of the keys that are closest to the given point. |
int
|
getShiftKeyIndex()
|
boolean
|
isShifted()
|
boolean
|
setShifted(boolean shiftState)
|
Protected methods | |
|---|---|
Keyboard.Key
|
createKeyFromXml(Resources res, Keyboard.Row parent, int x, int y, XmlResourceParser parser)
|
Keyboard.Row
|
createRowFromXml(Resources res, XmlResourceParser parser)
|
int
|
getHorizontalGap()
|
int
|
getKeyHeight()
|
int
|
getKeyWidth()
|
int
|
getVerticalGap()
|
void
|
setHorizontalGap(int gap)
|
void
|
setKeyHeight(int height)
|
void
|
setKeyWidth(int width)
|
void
|
setVerticalGap(int gap)
|
Inherited methods | |
|---|---|
java.lang.Object
| |
Default horizontal gap between keys.
May be a dimension value, which is a floating point number appended with a unit such as "14.5sp".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
May be a fractional value, which is a floating point number appended with either % or %p, such as "14.5%".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
This may also be a reference to a resource (in the form
"@[package:]type:name") or
theme attribute (in the form
"?[package:][type:]name")
containing a value of this type.
This corresponds to the global attribute
resource symbol horizontalGap.
Default height of a key, in pixels or percentage of display width.
May be a dimension value, which is a floating point number appended with a unit such as "14.5sp".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
May be a fractional value, which is a floating point number appended with either % or %p, such as "14.5%".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
This may also be a reference to a resource (in the form
"@[package:]type:name") or
theme attribute (in the form
"?[package:][type:]name")
containing a value of this type.
This corresponds to the global attribute
resource symbol keyHeight.
Default width of a key, in pixels or percentage of display width.
May be a dimension value, which is a floating point number appended with a unit such as "14.5sp".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
May be a fractional value, which is a floating point number appended with either % or %p, such as "14.5%".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
This may also be a reference to a resource (in the form
"@[package:]type:name") or
theme attribute (in the form
"?[package:][type:]name")
containing a value of this type.
This corresponds to the global attribute
resource symbol keyWidth.
Default vertical gap between rows of keys.
May be a dimension value, which is a floating point number appended with a unit such as "14.5sp".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
May be a fractional value, which is a floating point number appended with either % or %p, such as "14.5%".
The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
some parent container.
This may also be a reference to a resource (in the form
"@[package:]type:name") or
theme attribute (in the form
"?[package:][type:]name")
containing a value of this type.
This corresponds to the global attribute
resource symbol verticalGap.
Keyboard (Context context, int xmlLayoutResId)
Creates a keyboard from the given xml key layout file.
| Parameters | |
|---|---|
context |
Context:
the application or service context |
xmlLayoutResId |
int:
the resource file that contains the keyboard layout and keys.
|
Keyboard (Context context, int xmlLayoutResId, int modeId, int width, int height)
Creates a keyboard from the given xml key layout file. Weeds out rows that have a keyboard mode defined but don't match the specified mode.
| Parameters | |
|---|---|
context |
Context:
the application or service context |
xmlLayoutResId |
int:
the resource file that contains the keyboard layout and keys. |
modeId |
int:
keyboard mode identifier |
width |
int:
sets width of keyboard |
height |
int:
sets height of keyboard
|
Keyboard (Context context, int xmlLayoutResId, int modeId)
Creates a keyboard from the given xml key layout file. Weeds out rows that have a keyboard mode defined but don't match the specified mode.
| Parameters | |
|---|---|
context |
Context:
the application or service context |
xmlLayoutResId |
int:
the resource file that contains the keyboard layout and keys. |
modeId |
int:
keyboard mode identifier
|
Keyboard (Context context, int layoutTemplateResId, CharSequence characters, int columns, int horizontalPadding)
Creates a blank keyboard from the given resource file and populates it with the specified characters in left-to-right, top-to-bottom fashion, using the specified number of columns.
If the specified number of columns is -1, then the keyboard will fit as many keys as possible in each row.
| Parameters | |
|---|---|
context |
Context:
the application or service context |
layoutTemplateResId |
int:
the layout template file, containing no keys. |
characters |
CharSequence:
the list of characters to display on the keyboard. One key will be created
for each character. |
columns |
int:
the number of columns of keys to display. If this number is greater than the
number of keys that can fit in a row, it will be ignored. If this number is -1, the
keyboard will fit as many keys as possible in each row.
|
horizontalPadding |
int
|
int getHeight ()
Returns the total height of the keyboard
| Returns | |
|---|---|
int |
the total height of the keyboard |
List<Keyboard.Key> getModifierKeys ()
| Returns | |
|---|---|
List<Keyboard.Key> |
|
int[] getNearestKeys (int x,
int y)
Returns the indices of the keys that are closest to the given point.
| Parameters | |
|---|---|
x |
int:
the x-coordinate of the point |
y |
int:
the y-coordinate of the point |
| Returns | |
|---|---|
int[] |
the array of integer indices for the nearest keys to the given point. If the given point is out of range, then an array of size zero is returned. |
boolean setShifted (boolean shiftState)
| Parameters | |
|---|---|
shiftState |
boolean
|
| Returns | |
|---|---|
boolean |
|
Keyboard.Key createKeyFromXml (Resources res, Keyboard.Row parent, int x, int y, XmlResourceParser parser)
| Parameters | |
|---|---|
res |
Resources
|
parent |
Keyboard.Row
|
x |
int
|
y |
int
|
parser |
XmlResourceParser
|
| Returns | |
|---|---|
Keyboard.Key |
|
Keyboard.Row createRowFromXml (Resources res, XmlResourceParser parser)
| Parameters | |
|---|---|
res |
Resources
|
parser |
XmlResourceParser
|
| Returns | |
|---|---|
Keyboard.Row |
|