Class CCTableView

A table view displays rows of content separated into columns, with the ability to select one or more rows. Data is sourced from an external object (CCTableViewDataSource), which is used to precisely set up the configuration of each row, column and cell. The view is kept in a scroll view, which allows automatic overflow control.

CCTableViewDataSource

Hierarchy (View Summary)

Constructors

Properties

acceptsFirstResponder: boolean = true

Whether the object can become the first responder.

canSelectMultipleRows: boolean = false

Whether multiple rows can be selected.

canSelectRow: boolean = false

Whether a row can be selected.

isFocused: boolean = false

Whether the view is currently focused.

isHidden: boolean = false

Whether the view is hidden.

needsDraw: boolean = true

Whether the view needs to be redrawn.

needsLayout: boolean = false

Whether the view needs to be laid out.

needsUpdateConstraints: boolean = false

Whether constraints need to be updated.

nextResponder?: CCResponder

The next responder in the responder chain.

onRowDoubleClicked?: (this: void, table: CCTableView, row: number) => void

Called when a row is double-clicked.

onRowSelected?: (this: void, table: CCTableView, row: number) => void

Called when a row is selected.

subviews: CCView[] = []

The list of subviews inside this view.

superview?: CCView

The view that contains this view, if it exists.

userInteractionEnabled: boolean = true

Whether user interaction is enabled for this view.

window?: CCWindow

The window this view is located inside.

Accessors

  • get backgroundColor(): undefined | number
  • The background color of the view.

    Returns undefined | number

  • set backgroundColor(value: undefined | number): void
  • Parameters

    • value: undefined | number

    Returns void

  • get contentView(): CCView
  • Returns CCView

    Do not use this field on a table view.

  • get frame(): CCRect
  • The position and size of the view.

    Returns CCRect

  • set frame(rect: CCRect): void
  • Parameters

    Returns void

  • get selectedRow(): null | number | number[]
  • The currently selected row or rows.

    Returns null | number | number[]

  • set selectedRow(value: null | number | number[]): void
  • Parameters

    • value: null | number | number[]

    Returns void

  • get showHorizontalScrollBar(): boolean
  • Whether to show the horizontal scrollbar.

    Returns boolean

  • set showHorizontalScrollBar(value: boolean): void
  • Parameters

    • value: boolean

    Returns void

  • get showVerticalScrollBar(): boolean
  • Whether to show the vertical scrollbar.

    Returns boolean

  • set showVerticalScrollBar(value: boolean): void
  • Parameters

    • value: boolean

    Returns void

Methods

  • This is used to place a blinking cursor on screen while not drawing. It's only called on the first responder of a window.

    Returns undefined | [CCPoint, number]

    The position and color of the cursor in window coordinates, or undefined to not place a cursor

  • Draws the view inside the specified rectangle. Override this function to provide custom view types.

    Parameters

    • rect: CCRect

      The rectangle to draw inside

    Returns void

  • Sends a list of key input events to the input manager, which will send back text input events through insertText(text: string).

    Parameters

    • events: CCEvent[]

      The input events to send

    Returns void

  • Returns whether the given row is selected.

    Parameters

    • row: number

      The row to check

    Returns boolean

    Whether the row is selected

  • Lays out the view hierarchy following constraints. This should only be called on a superview, which is done automatically.

    Returns void

  • Handles when a method action fails to find a responder.

    Parameters

    • method: string

      The method that was attempted

    Returns void

  • Tells the receiver that the frame or constraints of the sender changed. This triggers the receiver to update its constraints if any are related to the sender, and cascades the message up and down throughout the hierarchy. It will also trigger a cascade on itself if it needs to update constraints.

    Parameters

    • sender: CCView

      The view whose frame and/or constraints changed

    • previous: CCView

      The view that called this method, to prevent backtracking

    Returns void

  • Attempts to call the specified method on the object, passing the call on to the next responder if this object doesn't implement it.

    Parameters

    • method: string

      The name of the method to call

    • ...args: any[]

      Any parameters to pass to the method

    Returns boolean

    Whether a responder was able to respond to the method

  • Updates the displayed data from the data source.

    Returns void

  • Adds a number of constraints to views using code. This can simplify settings constraints by using familiar code syntax instead of lengthy constraint constructions and activations.

    The syntax is fairly simple:

    <ViewName>.<Attribute> = [<Multiplier> *] <ViewName>.<Attribute> [+|- <Constant>]
    <ViewName>.<Attribute> = <Constant>
    

    The code is processed using Lua as the parser, so it's not strictly required to be in exactly this format; but mind that operators other than add/sub/mul/div/unm aren't supported (and division is only valid if the divisor is a number), and no libraries are available in the environment.

    Parameters

    • code: string

      The constraint code to apply

    • views: { [name: string]: CCView }

      A key-value map of names of views in the code, to the views they represent

    Returns void