# Print output for @column tags ?>
Developers

- Design
- Develop
- Distribute

Developer Console

## Most visited

## Recently visited

## Results for

# android.widget

The widget package contains (mostly visual) UI elements to use on your Application screen. You can also design your own.

To create your own widget, extend `View` or a subclass. To use your widget in layout XML, there are two additional files for you to create. Here is a list of files you'll need to create to implement a custom widget:

- Java implementation file - This is the file that implements the behavior of the widget. If you can instantiate the object from layout XML, you will also have to code a constructor that retrieves all the attribute values from the layout XML file.
- XML definition file - An XML file in res/values/ that defines the XML element used to instantiate your widget, and the attributes that it supports. Other applications will use this element and attributes in their in another in their layout XML.
- Layout XML [optional]- An optional XML file inside res/layout/ that describes the layout of your widget. You could also do this in code in your Java file.

ApiDemos sample application has an example of creating a custom layout XML tag, LabelView. See the following files that demonstrate implementing and using a custom widget:

- LabelView.java - The implementation file
- res/values/attrs.xml - Definition file
- res/layout/custom_view_1.xml - Layout file

## Annotations

RemoteViews.RemoteView | This annotation indicates that a subclass of View is allowed to be used with the `RemoteViews` mechanism.

## Interfaces

AbsListView.MultiChoiceModeListener | A MultiChoiceModeListener receives events for `AbsListView#CHOICE_MODE_MULTIPLE_MODAL`.
AbsListView.OnScrollListener | Interface definition for a callback to be invoked when the list or grid has been scrolled.
AbsListView.RecyclerListener | A RecyclerListener is used to receive a notification whenever a View is placed inside the RecycleBin's scrap heap.
AbsListView.SelectionBoundsAdjuster | The top-level view of a list item can implement this interface to allow itself to modify the bounds of the selection shown for that item.
ActionMenuView.OnMenuItemClickListener | Interface responsible for receiving menu item click events if the items themselves do not have individual item click listeners.
Adapter | An Adapter object acts as a bridge between an `AdapterView` and the underlying data for that view.
AdapterView.OnItemClickListener | Interface definition for a callback to be invoked when an item in this AdapterView has been clicked.
AdapterView.OnItemLongClickListener | Interface definition for a callback to be invoked when an item in this view has been clicked and held.
AdapterView.OnItemSelectedListener | Interface definition for a callback to be invoked when an item in this view has been selected.
Advanceable | This interface can be implemented by any collection-type view which has a notion of progressing through its set of children.
AutoCompleteTextView.OnDismissListener | Listener to respond to the AutoCompleteTextView's completion list being dismissed.
AutoCompleteTextView.Validator | This interface is used to make sure that the text entered in this TextView complies to a certain format.
CalendarView.OnDateChangeListener | The callback used to indicate the user changes the date.
Checkable | Defines an extension for views that make them checkable.
Chronometer.OnChronometerTickListener | A callback that notifies when the chronometer has incremented on its own.
CompoundButton.OnCheckedChangeListener | Interface definition for a callback to be invoked when the checked state of a compound button changed.
DatePicker.OnDateChangedListener | The callback used to indicate the user changed the date.
ExpandableListAdapter | An adapter that links a `ExpandableListView` with the underlying data.
ExpandableListView.OnChildClickListener | Interface definition for a callback to be invoked when a child in this expandable list has been clicked.
ExpandableListView.OnGroupClickListener | Interface definition for a callback to be invoked when a group in this expandable list has been clicked.
ExpandableListView.OnGroupCollapseListener | Used for being notified when a group is collapsed
ExpandableListView.OnGroupExpandListener | Used for being notified when a group is expanded
Filter.FilterListener | Listener used to receive a notification upon completion of a filtering operation.
Filterable | Defines a filterable behavior.
FilterQueryProvider | This class can be used by external clients of CursorAdapter and CursorTreeAdapter to define how the content of the adapter should be filtered.
HeterogeneousExpandableList | Additional methods that when implemented make an `ExpandableListAdapter` take advantage of the `Adapter` view type mechanism.
ListAdapter | Extended `Adapter` that is the bridge between a `ListView` and the data that backs the list.
MediaController.MediaPlayerControl |
MultiAutoCompleteTextView.Tokenizer |
NumberPicker.Formatter | Interface used to format current value into a string for presentation.
NumberPicker.OnScrollListener | Interface to listen for the picker scroll state.
NumberPicker.OnValueChangeListener | Interface to listen for changes of the current value.
PopupMenu.OnDismissListener | Callback interface used to notify the application that the menu has closed.
PopupMenu.OnMenuItemClickListener | Interface responsible for receiving menu item click events if the items themselves do not have individual item click listeners.
PopupWindow.OnDismissListener | Listener that is called when this popup window is dismissed.
RadioGroup.OnCheckedChangeListener | Interface definition for a callback to be invoked when the checked radio button changed in this group.
RatingBar.OnRatingBarChangeListener | A callback that notifies clients when the rating has been changed.
RemoteViewsService.RemoteViewsFactory | An interface for an adapter between a remote collection view (ListView, GridView, etc) and the underlying data for that view.
SearchView.OnCloseListener |
SearchView.OnQueryTextListener | Callbacks for changes to the query text.
SearchView.OnSuggestionListener | Callback interface for selection events on suggestions.
SectionIndexer | Interface that may implemented on `Adapter`s to enable fast scrolling between sections of an `AbsListView`.
SeekBar.OnSeekBarChangeListener | A callback that notifies clients when the progress level has been changed.
ShareActionProvider.OnShareTargetSelectedListener | Listener for the event of selecting a share target.
SimpleAdapter.ViewBinder | This class can be used by external clients of SimpleAdapter to bind values to views.
SimpleCursorAdapter.CursorToStringConverter | This class can be used by external clients of SimpleCursorAdapter to define how the Cursor should be converted to a String.
SimpleCursorAdapter.ViewBinder | This class can be used by external clients of SimpleCursorAdapter to bind values fom the Cursor to views.
SimpleCursorTreeAdapter.ViewBinder | This class can be used by external clients of SimpleCursorTreeAdapter to bind values from the Cursor to views.
SlidingDrawer.OnDrawerCloseListener | Callback invoked when the drawer is closed.
SlidingDrawer.OnDrawerOpenListener | Callback invoked when the drawer is opened.
SlidingDrawer.OnDrawerScrollListener | Callback invoked when the drawer is scrolled.
SpinnerAdapter | Extended `Adapter` that is the bridge between a `Spinner` and its data.
TabHost.OnTabChangeListener | Interface definition for a callback to be invoked when tab changed
TabHost.TabContentFactory | Makes the content of a tab when it is selected.
TextView.OnEditorActionListener | Interface definition for a callback to be invoked when an action is performed on the editor.
ThemedSpinnerAdapter | An extension of SpinnerAdapter that is capable of inflating drop-down views against a different theme than normal views.
TimePicker.OnTimeChangedListener | The callback interface used to indicate the time has been adjusted.
Toolbar.OnMenuItemClickListener | Interface responsible for receiving menu item click events if the items themselves do not have individual item click listeners.
ViewSwitcher.ViewFactory | Creates views in a ViewSwitcher.
WrapperListAdapter | List adapter that wraps another list adapter.
ZoomButtonsController.OnZoomListener | Interface that will be called when the user performs an interaction that triggers some action, for example zooming.

## Classes

AbsListView | Base class that can be used to implement virtualized lists of items.
AbsListView.LayoutParams | AbsListView extends LayoutParams to provide a place to hold the view type.
AbsoluteLayout | This class is deprecated. Use `FrameLayout`, `RelativeLayout` or a custom layout instead.
AbsoluteLayout.LayoutParams | Per-child layout information associated with AbsoluteLayout.
AbsSeekBar | AbsSeekBar extends the capabilities of ProgressBar by adding a draggable thumb.
AbsSpinner | An abstract base class for spinner widgets.
ActionMenuView | ActionMenuView is a presentation of a series of menu options as a View.
ActionMenuView.LayoutParams |
AdapterView<T extends Adapter> | An AdapterView is a view whose children are determined by an `Adapter`.
AdapterView.AdapterContextMenuInfo | Extra menu information provided to the `View.OnCreateContextMenuListener.onCreateContextMenu(ContextMenu, View, ContextMenuInfo)` callback when a context menu is brought up for this AdapterView.
AdapterViewAnimator | Base class for a `AdapterView` that will perform animations when switching between its views.
AdapterViewFlipper | Simple `ViewAnimator` that will animate between two or more views that have been added to it.
AlphabetIndexer | A helper class for adapters that implement the SectionIndexer interface.
AnalogClock | This class is deprecated. This widget is no longer supported.
ArrayAdapter<T> | You can use this adapter to provide views for an `AdapterView`, Returns a view for each object in a collection of data objects you provide, and can be used with list-based user interface widgets such as `ListView` or `Spinner`.
AutoCompleteTextView | An editable text view that shows completion suggestions automatically while the user is typing.
BaseAdapter | Common base class of common implementation for an `Adapter` that can be used in both `ListView` (by implementing the specialized `ListAdapter` interface) and `Spinner` (by implementing the specialized `SpinnerAdapter` interface).
BaseExpandableListAdapter | Base class for a `ExpandableListAdapter` used to provide data and Views from some data to an expandable list view.
Button | A user interface element the user can tap or click to perform an action.
CalendarView | This class is a calendar widget for displaying and selecting dates.
CheckBox | A checkbox is a specific type of two-states button that can be either checked or unchecked.
CheckedTextView | An extension to `TextView` that supports the `Checkable` interface and displays.
Chronometer | Class that implements a simple timer.
CompoundButton | A button with two states, checked and unchecked.
CursorAdapter | Adapter that exposes data from a `Cursor` to a `ListView` widget.
CursorTreeAdapter | An adapter that exposes data from a series of `Cursor`s to an `ExpandableListView` widget.
DatePicker | Provides a widget for selecting a date.
DialerFilter | This class is deprecated. Use a custom view or layout to handle this functionality instead
DigitalClock | This class is deprecated. It is recommended you use `TextClock` instead.
EdgeEffect | This class performs the graphical effect used at the edges of scrollable widgets when the user scrolls beyond the content bounds in 2D space.
EditText | A user interface element for entering and modifying text.
ExpandableListView | A view that shows items in a vertically scrolling two-level list.
ExpandableListView.ExpandableListContextMenuInfo | Extra menu information specific to an `ExpandableListView` provided to the `View.OnCreateContextMenuListener.onCreateContextMenu(ContextMenu, View, ContextMenuInfo)` callback when a context menu is brought up for this AdapterView.
Filter | A filter constrains data with a filtering pattern.
Filter.FilterResults | Holds the results of a filtering operation.
FrameLayout | FrameLayout is designed to block out an area on the screen to display a single item.
FrameLayout.LayoutParams | Per-child layout information for layouts that support margins.
Gallery | This class is deprecated. This widget is no longer supported. Other horizontally scrolling widgets include `HorizontalScrollView` and `ViewPager` from the support library.
Gallery.LayoutParams | Gallery extends LayoutParams to provide a place to hold current Transformation information along with previous position/transformation info.
GridLayout | A layout that places its children in a rectangular grid.
GridLayout.Alignment | Alignments specify where a view should be placed within a cell group and what size it should be.
GridLayout.LayoutParams | Layout information associated with each of the children of a GridLayout.
GridLayout.Spec | A Spec defines the horizontal or vertical characteristics of a group of cells.
GridView | A view that shows items in two-dimensional scrolling grid.
HeaderViewListAdapter | ListAdapter used when a ListView has header views.
HorizontalScrollView | Layout container for a view hierarchy that can be scrolled by the user, allowing it to be larger than the physical display.
ImageButton | Displays a button with an image (instead of text) that can be pressed or clicked by the user.
ImageSwitcher | `ViewSwitcher` that switches between two ImageViews when a new image is set on it.
ImageView | Displays image resources, for example `Bitmap` or `Drawable` resources.
LinearLayout | A layout that arranges other views either horizontally in a single column or vertically in a single row.
LinearLayout.LayoutParams | Per-child layout information associated with ViewLinearLayout.
ListPopupWindow | A ListPopupWindow anchors itself to a host view and displays a list of choices.
ListView | Displays a vertically-scrollable collection of views, where each view is positioned immediatelybelow the previous view in the list.
ListView.FixedViewInfo | A class that represents a fixed view in a list, for example a header at the top or a footer at the bottom.
Magnifier | Android magnifier widget.
Magnifier.Builder | Builder class for `Magnifier` objects.
MediaController | A view containing controls for a MediaPlayer.
MultiAutoCompleteTextView | An editable text view, extending `AutoCompleteTextView`, that can show completion suggestions for the substring of the text where the user is typing instead of necessarily for the entire thing.
MultiAutoCompleteTextView.CommaTokenizer | This simple Tokenizer can be used for lists where the items are separated by a comma and one or more spaces.
NumberPicker | A widget that enables the user to select a number from a predefined range.
OverScroller | This class encapsulates scrolling with the ability to overshoot the bounds of a scrolling operation.
PopupMenu | A PopupMenu displays a `Menu` in a modal popup window anchored to a `View`.
PopupWindow | This class represents a popup window that can be used to display an arbitrary view.
ProgressBar | A user interface element that indicates the progress of an operation.
QuickContactBadge | Widget used to show an image with the standard QuickContact badge and on-click behavior.
RadioButton | A radio button is a two-states button that can be either checked or unchecked.
RadioGroup | This class is used to create a multiple-exclusion scope for a set of radio buttons.
RadioGroup.LayoutParams | This set of layout parameters defaults the width and the height of the children to `ViewGroup.LayoutParams.WRAP_CONTENT` when they are not specified in the XML file.
RatingBar | A RatingBar is an extension of SeekBar and ProgressBar that shows a rating in stars.
RelativeLayout | A Layout where the positions of the children can be described in relation to each other or to the parent.
RelativeLayout.LayoutParams | Specifies how a view is positioned within a `RelativeLayout`.
RemoteViews | A class that describes a view hierarchy that can be displayed in another process.
RemoteViews.RemoteResponse | Class representing a response to an action performed on any element of a RemoteViews.
RemoteViewsService | The service to be connected to for a remote adapter to request RemoteViews.
ResourceCursorAdapter | An easy adapter that creates views defined in an XML file.
ResourceCursorTreeAdapter | A fairly simple ExpandableListAdapter that creates views defined in an XML file.
Scroller | This class encapsulates scrolling.
ScrollView | A view group that allows the view hierarchy placed within it to be scrolled.
SearchView | A widget that provides a user interface for the user to enter a search query and submit a request to a search provider.
SeekBar | A SeekBar is an extension of ProgressBar that adds a draggable thumb.
ShareActionProvider | This is a provider for a share action.
SimpleAdapter | An easy adapter to map static data to views defined in an XML file.
SimpleCursorAdapter | An easy adapter to map columns from a cursor to TextViews or ImageViews defined in an XML file.
SimpleCursorTreeAdapter | An easy adapter to map columns from a cursor to TextViews or ImageViews defined in an XML file.
SimpleExpandableListAdapter | An easy adapter to map static data to group and child views defined in an XML file.
SlidingDrawer | This class is deprecated. This class is not supported anymore. It is recommended you base your own implementation on the source code for the Android Open Source Project if you must use it in your application.
Space | Space is a lightweight View subclass that may be used to create gaps between components in general purpose layouts.
Spinner | A view that displays one child at a time and lets the user pick among them.
StackView |
Switch | A Switch is a two-state toggle switch widget that can select between two options.
TabHost | This class is deprecated. new applications should use fragment APIs instead of this class: Use TabLayout and ViewPager instead.
TabHost.TabSpec | A tab has a tab indicator, content, and a tag that is used to keep track of it.
TableLayout | A layout that arranges its children into rows and columns.
TableLayout.LayoutParams | This set of layout parameters enforces the width of each child to be `ViewGroup.LayoutParams.MATCH_PARENT` and the height of each child to be `ViewGroup.LayoutParams.WRAP_CONTENT`, but only if the height is not specified.
TableRow | A layout that arranges its children horizontally.
TableRow.LayoutParams | Set of layout parameters used in table rows.
TabWidget | This class is deprecated. new applications should use fragment APIs instead of this class: Use TabLayout and ViewPager instead.
TextClock | `TextClock` can display the current date and/or time as a formatted string.
TextSwitcher | Specialized `ViewSwitcher` that contains only children of type `TextView`.
TextView | A user interface element that displays text to the user.
TextView.SavedState | User interface state that is stored by TextView for implementing `View#onSaveInstanceState`.
TimePicker | A widget for selecting the time of day, in either 24-hour or AM/PM mode.
Toast | A toast is a view containing a quick little message for the user. The toast class helps you create and show those.
Toast.Callback | Callback object to be called when the toast is shown or hidden.
ToggleButton | Displays checked/unchecked states as a button with a "light" indicator and by default accompanied with the text "ON" or "OFF".
Toolbar | A standard toolbar for use within application content.
Toolbar.LayoutParams | Layout information for child views of Toolbars.
TwoLineListItem | This class is deprecated. This class can be implemented easily by apps using a `RelativeLayout` or a `LinearLayout`.
VideoView | Displays a video file.
ViewAnimator | Base class for a `FrameLayout` container that will perform animations when switching between its views.
ViewFlipper | Simple `ViewAnimator` that will animate between two or more views that have been added to it.
ViewSwitcher | `ViewAnimator` that switches between two views, and has a factory from which these views are created.
ZoomButton | This class is deprecated. Use other means to handle this functionality. This widget is merely a simple wrapper around a long-press handler.
ZoomButtonsController | This class is deprecated. This functionality and UI is better handled with custom views and layouts rather than a dedicated zoom-control widget
ZoomControls | This class is deprecated. This functionality and UI is better handled with custom views and layouts rather than a dedicated zoom-control widget

## Enums

ImageView.ScaleType | Options for scaling the bounds of an image to the bounds of this view.
TextView.BufferType | Type of the text buffer that defines the characteristics of the text such as static, styleable, or editable.

## Exceptions

RemoteViews.ActionException | Exception to send when something goes wrong executing an action

Full name *
Email address *
Company / developer name
One of your Play Store app URLs *
Which best describes your business:*
Apps
Games
Apps & Games
*
*