Filter
abstract class Filter
| kotlin.Any | |
| ↳ | android.widget.Filter | 
A filter constrains data with a filtering pattern.
Filters are usually created by android.widget.Filterable classes.
Filtering operations performed by calling filter(java.lang.CharSequence) or filter(java.lang.CharSequence,android.widget.Filter.FilterListener) are performed asynchronously. When these methods are called, a filtering request is posted in a request queue and processed later. Any call to one of these methods will cancel any previous non-executed filtering request.
Summary
| Nested classes | |
|---|---|
| abstract | 
            
             Listener used to receive a notification upon completion of a filtering operation.  | 
        
| open | 
            
             Holds the results of a filtering operation.  | 
        
| Public constructors | |
|---|---|
            Filter()Creates a new asynchronous filter.  | 
        |
| Public methods | |
|---|---|
| open CharSequence! | 
            convertResultToString(resultValue: Any!)Converts a value from the filtered set into a CharSequence.  | 
        
| Unit | 
            filter(constraint: CharSequence!)Starts an asynchronous filtering operation.  | 
        
| Unit | 
            filter(constraint: CharSequence!, listener: Filter.FilterListener!)Starts an asynchronous filtering operation.  | 
        
| Protected methods | |
|---|---|
| abstract Filter.FilterResults! | 
            performFiltering(constraint: CharSequence!)Invoked in a worker thread to filter the data according to the constraint.  | 
        
| abstract Unit | 
            publishResults(constraint: CharSequence!, results: Filter.FilterResults!)Invoked in the UI thread to publish the filtering results in the user interface.  | 
        
Public constructors
Public methods
convertResultToString
open fun convertResultToString(resultValue: Any!): CharSequence!
Converts a value from the filtered set into a CharSequence. Subclasses should override this method to convert their results. The default implementation returns an empty String for null values or the default String representation of the value.
| Parameters | |
|---|---|
resultValue | 
            Any!: the value to convert to a CharSequence | 
| Return | |
|---|---|
CharSequence! | 
            a CharSequence representing the value | 
filter
fun filter(constraint: CharSequence!): Unit
Starts an asynchronous filtering operation. Calling this method cancels all previous non-executed filtering requests and posts a new filtering request that will be executed later.
| Parameters | |
|---|---|
constraint | 
            CharSequence!: the constraint used to filter the data | 
filter
fun filter(
constraint: CharSequence!,
listener: Filter.FilterListener!
): Unit
Starts an asynchronous filtering operation. Calling this method cancels all previous non-executed filtering requests and posts a new filtering request that will be executed later.
Upon completion, the listener is notified.
| Parameters | |
|---|---|
constraint | 
            CharSequence!: the constraint used to filter the data | 
listener | 
            Filter.FilterListener!: a listener notified upon completion of the operation | 
Protected methods
performFiltering
protected abstract fun performFiltering(constraint: CharSequence!): Filter.FilterResults!
Invoked in a worker thread to filter the data according to the constraint. Subclasses must implement this method to perform the filtering operation. Results computed by the filtering operation must be returned as a android.widget.Filter.FilterResults that will then be published in the UI thread through publishResults(java.lang.CharSequence,android.widget.Filter.FilterResults).
Contract: When the constraint is null, the original data must be restored.
| Parameters | |
|---|---|
constraint | 
            CharSequence!: the constraint used to filter the data | 
| Return | |
|---|---|
Filter.FilterResults! | 
            the results of the filtering operation | 
publishResults
protected abstract fun publishResults(
constraint: CharSequence!,
results: Filter.FilterResults!
): Unit
Invoked in the UI thread to publish the filtering results in the user interface. Subclasses must implement this method to display the results computed in performFiltering.
| Parameters | |
|---|---|
constraint | 
            CharSequence!: the constraint used to filter the data | 
results | 
            Filter.FilterResults!: the results of the filtering operation |