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:
|AbsListView.MultiChoiceModeListener||A MultiChoiceModeListener receives events for
|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.|
|Adapter||An Adapter object acts as a bridge between an
|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.|
|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 changes\d the date.|
|ExpandableListAdapter||An adapter that links a
|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|
Listener used to receive a notification upon completion of a filtering operation.
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
|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.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.|
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.OnQueryTextListener||Callbacks for changes to the query text.|
|SearchView.OnSuggestionListener||Callback interface for selection events on suggestions.|
|SectionIndexer||Interface that should be implemented on Adapters to enable fast scrolling in an
|SeekBar.OnSeekBarChangeListener||A callback that notifies clients when the progress level has been changed.|
|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.|
|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.|
|TimePicker.OnTimeChangedListener||The callback interface used to indicate the time has been adjusted.|
|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.|
|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
|AbsoluteLayout.LayoutParams||Per-child layout information associated with AbsoluteLayout.|
|AbsSpinner||An abstract base class for spinner widgets.|
|AdapterView<T extends Adapter>||An AdapterView is a view whose children are determined by an
|AdapterView.AdapterContextMenuInfo||Extra menu information provided to the
|AdapterViewAnimator||Base class for a
|AlphabetIndexer||A helper class for adapters that implement the SectionIndexer interface.|
|AnalogClock||This widget display an analogic clock with two hands for hours and minutes.|
|ArrayAdapter<T>||A concrete BaseAdapter that is backed by an array of arbitrary objects.|
An editable text view that shows completion suggestions automatically while the user is typing.
|BaseAdapter||Common base class of common implementation for an
|BaseExpandableListAdapter||Base class for a
|Button||Represents a push-button widget.|
|CalendarView||This class is a calendar widget for displaying and selecting dates.|
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
|Chronometer||Class that implements a simple timer.|
A button with two states, checked and unchecked.
|CursorAdapter||Adapter that exposes data from a
|CursorTreeAdapter||An adapter that exposes data from a series of
|DatePicker||This class is a widget for selecting a date.|
|DigitalClock||Like AnalogClock, but digital.|
|EditText||EditText is a thin veneer over TextView that configures itself to be editable.|
|ExpandableListView||A view that shows items in a vertically scrolling two-level list.|
|ExpandableListView.ExpandableListContextMenuInfo||Extra menu information specific to an
A filter constrains data with a filtering pattern.
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||A view that shows items in a center-locked, horizontally scrolling list.|
|Gallery.LayoutParams||Gallery extends LayoutParams to provide a place to hold current Transformation information along with previous position/transformation info.|
|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.|
Displays a button with an image (instead of text) that can be pressed or clicked by the user.
|ImageView||Displays an arbitrary image, such as an icon.|
|LinearLayout||A Layout that arranges its children in a single column or 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||A view that shows items in a vertically scrolling 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.|
|MediaController||A view containing controls for a MediaPlayer.|
|MultiAutoCompleteTextView||An editable text view, extending
|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 form a predefined range.|
|OverScroller||This class encapsulates scrolling with the ability to overshoot the bounds of a scrolling operation.|
|PopupMenu||A PopupMenu displays a
A popup window that can be used to display an arbitrary view.
Visual indicator of progress in some operation.
|QuickContactBadge||Widget used to show an image with the standard QuickContact badge and on-click behavior.|
A radio button is a two-states button that can be either checked or unchecked.
This class is used to create a multiple-exclusion scope for a set of radio buttons.
This set of layout parameters defaults the width and the height of the children to
|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||Per-child layout information associated with RelativeLayout.|
|RemoteViews||A class that describes a view hierarchy that can be displayed in another process.|
|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||Layout container for a view hierarchy that can be scrolled by the user, allowing it to be larger than the physical display.|
|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.|
|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||SlidingDrawer hides content out of the screen and allows the user to drag a handle to bring the content on screen.|
|Spinner||A view that displays one child at a time and lets the user pick among them.|
|TabHost||Container for a tabbed window view.|
|TabHost.TabSpec||A tab has a tab indicator, content, and a tag that is used to keep track of it.|
A layout that arranges its children into rows and columns.
A layout that arranges its children horizontally.
Set of layout parameters used in table rows.
|TabWidget||Displays a list of tab labels representing each page in the parent's tab collection.|
|TextView||Displays text to the user and optionally allows them to edit it.|
|TextView.SavedState||User interface state that is stored by TextView for implementing
|TimePicker||A view 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.|
|ToggleButton||Displays checked/unchecked states as a button with a "light" indicator and by default accompanied with the text "ON" or "OFF".|
A view group with two children, intended for use in ListViews.
|VideoView||Displays a video file.|
|ViewAnimator||Base class for a
|ImageView.ScaleType||Options for scaling the bounds of an image to the bounds of this view.|
|RemoteViews.ActionException||Exception to send when something goes wrong executing an action|