java.lang.Object
   ↳ android.view.View
     ↳ android.view.ViewGroup
       ↳ android.widget.LinearLayout
         ↳ com.sap.cloud.mobile.fiori.formcell.FilterFormCell

Class Overview

A custom control using either chips or checkboxes for selecting multiple options.

A string array containing names of all items setValueOptions(String[])in and a List of indices of the pre-selected items setValue(List) should be specified.

Summary

XML Attributes
Attribute Name Related Method Description
android:clickable setClickable(boolean)  
android:enabled setEnabled(boolean)  
android:entries String[] for the available options to the user to choose from

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name". 

android:focusable setFocusable(boolean)  
com.sap.cloud.mobile.fiori:errorEnabled isErrorEnabled()  
com.sap.cloud.mobile.fiori:helperEnabled isHelperEnabled()  
com.sap.cloud.mobile.fiori:key  
com.sap.cloud.mobile.fiori:label setLabel(CharSequence)  
com.sap.cloud.mobile.fiori:labelEnabled setLabelEnabled(boolean)  
com.sap.cloud.mobile.fiori:labelTextAppearance setLabelTextAppearanceFocused(int)  
com.sap.cloud.mobile.fiori:labelTextAppearanceFocused setLabelTextAppearanceFocused(int)  
com.sap.cloud.mobile.fiori:labelTextAppearanceUnFocused setLabelTextAppearanceFocused(int)  
com.sap.cloud.mobile.fiori:outlined  
com.sap.cloud.mobile.fiori:singleLine  
com.sap.cloud.mobile.fiori:useChip  
com.sap.cloud.mobile.fiori:value int[] of the index of selected items

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name". 

[Expand]
Inherited Constants
From class android.widget.LinearLayout
From class android.view.ViewGroup
From class android.view.View
Fields
protected CharSequence mErrorMessage
protected int mErrorTextAppearance
protected CharSequence mHelperText
protected int mHelperTextAppearance
protected boolean mIsInError
protected int mLabelTextAppearance
protected int mLabelTextAppearanceUnFocused
protected TextView mLabelTextView
protected TextView mStatusView
[Expand]
Inherited Fields
From class android.view.View
Public Constructors
FilterFormCell(Context context)
Construct a new FilterFormCell with default styling, sets the CellType to WidgetType.FILTER
FilterFormCell(Context context, AttributeSet attrs)
Construct a new FilterFormCell with default styling, overriding the attributes for the control as requested, sets the CellType to WidgetType.FILTER
Public Methods
void addView(View child, int index, ViewGroup.LayoutParams params)
Add given view in the view
int getCellType()
Return the enum value for FilterFormCell
CellValueChangeListener<List<Integer>> getCellValueChangeListener()
Return the value change handler of the control
CharSequence getError()
Get the error
TextView getErrorView()
CharSequence getHelperText()
Get the helper text from the view
CharSequence getKey()
Return the label of the property of control
TextView getKeyLabel()
Return the view holding the key-name string
List<Integer> getValue()
Returns the index list of selected items in the FilterFormCell
String[] getValueOptions()
Returns an array of items in the Grid
boolean isEditable()
Returns if the control is enabled or not to modify values.
boolean isErrorEnabled()
Is error enabled on the view
boolean isHelperEnabled()
Set if the helper field is enabled on the view
boolean isLabelEnabled()
Is the label field on the view is enabled
boolean isOutlined()
True when outlined chips are outlined.
boolean isSingleLine()
True when chips are displayed on a single line, that scrolls horizontally.
boolean isUseChip()
True when the filter should display chips, false when it should display check boxes.
void onCheckedChanged(CompoundButton compoundButton, boolean isChecked)
void onRestoreInstanceState(Parcelable state)
Parcelable onSaveInstanceState()
void setCellValueChangeListener(CellValueChangeListener<List<Integer>> listener)
void setClickable(boolean clickable)
Enable or disable clickable property on the view and all its children
void setEditable(boolean isEditable)
Set if the control is enabled or not to modify value of the control.
void setEnabled(boolean enabled)
Enable or disable the view
void setError(CharSequence error)
Set the error on the view.
void setErrorEnabled(boolean errorEnabled)
Enable or disable the error field on the view
void setErrorTextAppearance(int resId)
Set the text appearance on the error
void setFocusable(boolean focusable)
Enable or disable focusable property on the view and all its children
void setHelperEnabled(boolean enabled)
Enable or disable the helper field on the view
void setHelperText(CharSequence helper)
Set the helper text on the view
void setHelperTextAppearance(int textAppearance)
Set the helper text appearance
void setKey(CharSequence keyName)
Set the label for property of the control
void setKeyEnabled(boolean keyEnabled)
void setKeyTextAppearance(int resId)
void setLabelTextAppearanceUnFocused(int labelTextAppearanceUnFocused)
Set the label text appearance when the view is not focused
void setOutlined(boolean outlined)
Indicate if chips should be outlined.
void setOverrideKeyStyle(boolean overrideKeyStyle)
Override the Key styling manually.
void setOverrideStatusStyle(boolean overrideStatusStyle)
Override the status i.e.
void setSingleLine(boolean singleLine)
When set to true, chips will be displayed on a single line that can scroll horizontally when the line is wider than the display.
void setUseChip(boolean useChip)
Set to true to display the filter using chips.
void setValue(List<Integer> value)
Sets the list of index of selected items
void setValueOptions(String[] valueOptions)
Sets the label of options available for the user to choose from
Protected Methods
static boolean arrayContains(int[] array, int value)
Check if the array contains the given property
void drawableStateChanged()
Drawable state changed
TextView generateTextView()
Generate the text view
ViewGroup.LayoutParams getDefaultLayoutParams()
CharSequence getLabel()
Get the label on the view
void replaceStatusView()
Each time you add a new view, error/helper view has to be adjusted to be the last view in the layout
void setLabel(CharSequence key)
Set the label on the view
void setLabelEnabled(boolean keyEnabled)
Enable or disable the label field on the view
void setLabelTextAppearance(int textAppearance)
Set the text appearance on the label.
void setLabelTextAppearanceFocused(int textAppearance)
Set the text appearance on the label when the view is not focused
void setLabelTextColorError(ColorStateList color)
Set the text color of the label for error mode
void setLabelTextColorFocused(ColorStateList color)
Set the color of label when the view is focused
void setLabelTextColorUnFocused(ColorStateList color)
Set the color of label when the view is not focused
boolean setupErrorHelperView()
Setup the error/helper field on the view
boolean setupLabelView()
Setup the label view on the view
boolean shouldLayout(View v)
Should layout the given view
[Expand]
Inherited Methods
From class android.widget.LinearLayout
From class android.view.ViewGroup
From class android.view.View
From class java.lang.Object
From interface android.graphics.drawable.Drawable.Callback
From interface android.view.KeyEvent.Callback
From interface android.view.ViewManager
From interface android.view.ViewParent
From interface android.view.accessibility.AccessibilityEventSource
From interface android.widget.CompoundButton.OnCheckedChangeListener
From interface com.sap.cloud.mobile.fiori.formcell.FormCell
From interface com.sap.cloud.mobile.fiori.formcell.InlineValidation
From interface com.sap.cloud.mobile.fiori.formcell.SupportsHelperText
From interface com.sap.cloud.mobile.fiori.formcell.SupportsKey

XML Attributes

android:clickable

Related Methods

android:enabled

Related Methods

android:entries

String[] for the available options to the user to choose from

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related Methods

android:focusable

Related Methods

com.sap.cloud.mobile.fiori:errorEnabled

Related Methods

com.sap.cloud.mobile.fiori:helperEnabled

Related Methods

com.sap.cloud.mobile.fiori:key

Related Methods

com.sap.cloud.mobile.fiori:label

Related Methods

com.sap.cloud.mobile.fiori:labelEnabled

Related Methods

com.sap.cloud.mobile.fiori:labelTextAppearance

com.sap.cloud.mobile.fiori:labelTextAppearanceFocused

com.sap.cloud.mobile.fiori:labelTextAppearanceUnFocused

com.sap.cloud.mobile.fiori:outlined

Related Methods

com.sap.cloud.mobile.fiori:singleLine

Related Methods

com.sap.cloud.mobile.fiori:useChip

Related Methods

com.sap.cloud.mobile.fiori:value

int[] of the index of selected items

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

May be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character;

May be an integer value, such as "100".

May be a boolean value, such as "true" or "false".

Related Methods

Fields

protected CharSequence mErrorMessage

protected int mErrorTextAppearance

protected CharSequence mHelperText

protected int mHelperTextAppearance

protected boolean mIsInError

protected int mLabelTextAppearance

protected int mLabelTextAppearanceUnFocused

protected TextView mLabelTextView

protected TextView mStatusView

Public Constructors

public FilterFormCell (Context context)

Construct a new FilterFormCell with default styling, sets the CellType to WidgetType.FILTER

Parameters
context context

public FilterFormCell (Context context, AttributeSet attrs)

Construct a new FilterFormCell with default styling, overriding the attributes for the control as requested, sets the CellType to WidgetType.FILTER

Parameters
context context
attrs attribute set

Public Methods

public void addView (View child, int index, ViewGroup.LayoutParams params)

Add given view in the view

Parameters
child View
index position at which the view has to be added
params ViewGroup.LayoutParams

public int getCellType ()

Return the enum value for FilterFormCell

Returns
  • WidgetType type of the control which has implemented FormCell

public CellValueChangeListener<List<Integer>> getCellValueChangeListener ()

Return the value change handler of the control

Returns
  • OnCellChangeListener - value change listener of the control

public CharSequence getError ()

Get the error

Returns
  • CharSequence

public TextView getErrorView ()

public CharSequence getHelperText ()

Get the helper text from the view

Returns
  • CharSequence

public CharSequence getKey ()

Return the label of the property of control

Returns
  • CharSequence keyName

public TextView getKeyLabel ()

Return the view holding the key-name string

Returns
  • TextView text-view displaying key-name

public List<Integer> getValue ()

Returns the index list of selected items in the FilterFormCell

Returns
  • List index of selected items

public String[] getValueOptions ()

Returns an array of items in the Grid

Returns
  • String[] itemNames in the Grid

public boolean isEditable ()

Returns if the control is enabled or not to modify values.

Returns
  • Boolean user is allowed to modify the value of the control

public boolean isErrorEnabled ()

Is error enabled on the view

Returns
  • boolean

public boolean isHelperEnabled ()

Set if the helper field is enabled on the view

Returns
  • boolean

public boolean isLabelEnabled ()

Is the label field on the view is enabled

Returns
  • boolean

public boolean isOutlined ()

True when outlined chips are outlined.

Returns
  • true when outlined chips are outlined.

public boolean isSingleLine ()

True when chips are displayed on a single line, that scrolls horizontally. Otherwise, chips are displayed on multiple lines.

Returns
  • true when chips are displayed on a single line, or false when chips are displayed on multiple lines.

public boolean isUseChip ()

True when the filter should display chips, false when it should display check boxes.

Returns
  • true when the filter should display chips, false when it should display check boxes.

public void onCheckedChanged (CompoundButton compoundButton, boolean isChecked)

public void onRestoreInstanceState (Parcelable state)

public Parcelable onSaveInstanceState ()

public void setCellValueChangeListener (CellValueChangeListener<List<Integer>> listener)

public void setClickable (boolean clickable)

Enable or disable clickable property on the view and all its children

Related XML Attributes
Parameters
clickable boolean

public void setEditable (boolean isEditable)

Set if the control is enabled or not to modify value of the control. In readOnly mode, however, the text labels and text values will be selectable. By default, the control will be editable( user can modify value of the control)

Parameters
isEditable Boolean

public void setEnabled (boolean enabled)

Enable or disable the view

Related XML Attributes
Parameters
enabled boolean

public void setError (CharSequence error)

Set the error on the view. If the view is not error enabled then this API does not take any effect.

Parameters
error CharSequence

public void setErrorEnabled (boolean errorEnabled)

Enable or disable the error field on the view

Parameters
errorEnabled boolean

public void setErrorTextAppearance (int resId)

Set the text appearance on the error

Parameters
resId style resource

public void setFocusable (boolean focusable)

Enable or disable focusable property on the view and all its children

Related XML Attributes
Parameters
focusable boolean

public void setHelperEnabled (boolean enabled)

Enable or disable the helper field on the view

Parameters
enabled boolean

public void setHelperText (CharSequence helper)

Set the helper text on the view

Parameters
helper CharSequence

public void setHelperTextAppearance (int textAppearance)

Set the helper text appearance

Parameters
textAppearance style resource

public void setKey (CharSequence keyName)

Set the label for property of the control

Parameters
keyName label of the property

public void setKeyEnabled (boolean keyEnabled)

public void setKeyTextAppearance (int resId)

public void setLabelTextAppearanceUnFocused (int labelTextAppearanceUnFocused)

Set the label text appearance when the view is not focused

Parameters
labelTextAppearanceUnFocused Style resource

public void setOutlined (boolean outlined)

Indicate if chips should be outlined. This method only has an affect when useChip is true.

Parameters
outlined true to outline chips, otherwise chips are not outlined.

public void setOverrideKeyStyle (boolean overrideKeyStyle)

Override the Key styling manually.

Parameters
overrideKeyStyle boolean

public void setOverrideStatusStyle (boolean overrideStatusStyle)

Override the status i.e. error and helper styling manually

Parameters
overrideStatusStyle boolean

public void setSingleLine (boolean singleLine)

When set to true, chips will be displayed on a single line that can scroll horizontally when the line is wider than the display. When set to false, chips will be displayed on multiple lines. This method only has an affect when useChip is true.

Parameters
singleLine true to display chips on a single line, false to display chips on multiple lines.

public void setUseChip (boolean useChip)

Set to true to display the filter using chips. False to display the filter using check boxes.

Parameters
useChip true to display the filter using chips. False to display the filter using check boxes.

public void setValue (List<Integer> value)

Sets the list of index of selected items

Parameters
value value of the property

public void setValueOptions (String[] valueOptions)

Sets the label of options available for the user to choose from

Parameters
valueOptions item list

Protected Methods

protected static boolean arrayContains (int[] array, int value)

Check if the array contains the given property

Parameters
array array of integer
value int
Returns
  • boolean

protected void drawableStateChanged ()

Drawable state changed

protected TextView generateTextView ()

Generate the text view

Returns
  • TextView

protected ViewGroup.LayoutParams getDefaultLayoutParams ()

protected CharSequence getLabel ()

Get the label on the view

Related XML Attributes
Returns
  • CharSequence

protected void replaceStatusView ()

Each time you add a new view, error/helper view has to be adjusted to be the last view in the layout

protected void setLabel (CharSequence key)

Set the label on the view

Related XML Attributes
Parameters
key CharSequence
See Also

protected void setLabelEnabled (boolean keyEnabled)

Enable or disable the label field on the view

Parameters
keyEnabled boolean
See Also

protected void setLabelTextAppearance (int textAppearance)

Set the text appearance on the label. This changes the appearance when the view is focused and unfocused

Parameters
textAppearance style resource

protected void setLabelTextAppearanceFocused (int textAppearance)

Set the text appearance on the label when the view is not focused

Parameters
textAppearance Style resource

protected void setLabelTextColorError (ColorStateList color)

Set the text color of the label for error mode

Parameters
color ColorStateList

protected void setLabelTextColorFocused (ColorStateList color)

Set the color of label when the view is focused

Parameters
color ColorStateList

protected void setLabelTextColorUnFocused (ColorStateList color)

Set the color of label when the view is not focused

Parameters
color ColorStateList

protected boolean setupErrorHelperView ()

Setup the error/helper field on the view

Returns
  • boolean true: new view is created false:existing view is used

protected boolean setupLabelView ()

Setup the label view on the view

Returns
  • boolean true: new view is created false:existing view is used

protected boolean shouldLayout (View v)

Should layout the given view

Parameters
v View
Returns
  • boolean