Options
All
  • Public
  • Public/Protected
  • All
Menu

Class RichTextComponent

富文本组件。 可通过 cc.RichTextComponent 获得该组件。

Hierarchy

Index

Constructors

constructor

Properties

Private _enabled

_enabled: boolean = true
property

_enabled

type

{Boolean}

Private _font

_font: TTFFont | null = null

Private _fontSize

_fontSize: number = 40

Private _handleTouchEvent

_handleTouchEvent: boolean = true

Private _horizontalAlign

_horizontalAlign: HorizontalTextAlignment = HorizontalTextAlignment.LEFT

_id

_id: string = idGenerator.getNewId()

For internal usage.

Private _imageAtlas

_imageAtlas: SpriteAtlas | null = null

Private _labelHeight

_labelHeight: number = 0

Private _labelSegments

_labelSegments: ILabelSegment[] = []

Private _labelSegmentsCache

_labelSegmentsCache: ILabelSegment[] = []

Private _labelWidth

_labelWidth: number = 0

Private _layoutDirty

_layoutDirty: boolean = true

Private _lineCount

_lineCount: number = 1

Private _lineHeight

_lineHeight: number = 40

Private _lineOffsetX

_lineOffsetX: number = 0

Private _linesWidth

_linesWidth: number[] = []

Private _maxWidth

_maxWidth: number = 0

Protected _name

_name: string

_objFlags

_objFlags: number

Protected _priority

_priority: number = 0

sceneGetter

sceneGetter: null | function = null

Private _string

_string: string = "<color=#00ff00>Rich</c><color=#0fffff>Text</color>"

Private _textArray

_textArray: IHtmlTextParserResultObj[] = []

Private updateRichTextStatus

updateRichTextStatus: function

Type declaration

    • (): void
    • Returns void

Protected _visibility

_visibility: number = -1

node

node: INode = NullNode

该组件被附加到的节点。组件总会附加到一个节点。

property

node

type

{Node}

example
cc.log(comp.node);

Static HorizontalAlign

HorizontalAlign: HorizontalTextAlignment = HorizontalTextAlignment

Static VerticalAlign

VerticalAlign: VerticalTextAlignment = VerticalTextAlignment

Static system

system: null = null

Accessors

scriptAsset

  • get scriptAsset(): null

isOnLoadCalled

  • get isOnLoadCalled(): number

enabled

  • get enabled(): boolean
  • set enabled(value: boolean): void

enabledInHierarchy

  • get enabledInHierarchy(): boolean

font

fontSize

  • get fontSize(): number
  • set fontSize(value: number): void

handleTouchEvent

  • get handleTouchEvent(): boolean
  • set handleTouchEvent(value: boolean): void

horizontalAlign

imageAtlas

isValid

  • get isValid(): boolean
  • 表示该对象是否可用(被 destroy 后将不可用)。
    当一个对象的 destroy 调用以后,会在这一帧结束后才真正销毁。
    因此从下一帧开始 isValid 就会返回 false,而当前帧内 isValid 仍然会是 true。
    如果希望判断当前帧是否调用过 destroy,请使用 cc.isValid(obj, true),不过这往往是特殊的业务需求引起的,通常情况下不需要这样。

    property

    {Boolean} isValid

    default

    true

    readonly
    example
    var node = new cc.Node();
    cc.log(node.isValid);    // true
    node.destroy();
    cc.log(node.isValid);    // true, still valid in this frame
    // after a frame...
    cc.log(node.isValid);    // false, destroyed in the end of last frame

    Returns boolean

lineHeight

  • get lineHeight(): number
  • set lineHeight(value: number): void

maxWidth

  • get maxWidth(): number
  • set maxWidth(value: number): void

name

  • get name(): string
  • set name(value: string): void

priority

  • get priority(): number
  • set priority(value: number): void

string

  • get string(): string
  • set string(value: string): void

uuid

  • get uuid(): string

visibility

  • get visibility(): number

Methods

Optional Private preload

  • __preload(): void
  • __preload is called before every onLoad. It is used to initialize the builtin components internally, to avoid checking whether onLoad is called before every public method calls. This method should be removed if script priority is supported.

    Returns void

Private activateChildren

  • activateChildren(active: any): void

Private addEventListeners

  • _addEventListeners(): void

Private addLabelSegment

  • addLabelSegment(stringToken: string, styleIndex: number): ILabelSegment

Private addRichTextImageElement

  • addRichTextImageElement(richTextElement: IHtmlTextParserResultObj): void

Private applyTextAttribute

Private containsTouchLocation

Private convertLiteralColorValue

  • convertLiteralColorValue(color: string): any

Private createFontLabel

destroyImmediate

  • _destroyImmediate(): void

destruct

  • _destruct(): void
  • Clear all references in the instance.

    NOTE: this method will not clear the getter or setter functions which defined in the instance of CCObject. You can override the _destruct method if you need, for example: _destruct: function () { for (var key in this) { if (this.hasOwnProperty(key)) { switch (typeof this[key]) { case 'string': this[key] = ''; break; case 'object': case 'function': this[key] = null; break; } } }

    Returns void

Private getFirstWordLen

  • getFirstWordLen(text: string, startIndex: number, textLen: number): number

Protected Optional getLocalBounds

  • getLocalBounds(out_rect: Rect): void
  • 如果组件的包围盒与节点不同,您可以实现该方法以提供自定义的轴向对齐的包围盒(AABB), 以便编辑器的场景视图可以正确地执行点选测试。

    Parameters

    • out_rect: Rect

      提供包围盒的 Rect

    Returns void

getRenderScene

  • _getRenderScene(): RenderScene

instantiate

  • instantiate(cloned: any): any

Private isLastComponentCR

  • isLastComponentCR(stringToken: any): boolean

Private measureText

  • measureText(styleIndex: number, string?: undefined | string): number | func

Private needsUpdateTextLayout

  • needsUpdateTextLayout(newTextArray: IHtmlTextParserResultObj[]): boolean

onPreDestroy

  • _onPreDestroy(): void

Private onTTFLoaded

  • _onTTFLoaded(): void

Private onTouchEnded

Protected parentChanged

  • parentChanged(node: INode): boolean

Private removeEventListeners

  • _removeEventListeners(): void

Private resetState

  • _resetState(): void

Private updateLabelSegmentTextAttributes

  • _updateLabelSegmentTextAttributes(): void

Private updateLineInfo

  • _updateLineInfo(): void

Private updateRichText

  • _updateRichText(): void

Private updateRichTextPosition

  • _updateRichTextPosition(): void

Private updateRichTextWithMaxWidth

  • updateRichTextWithMaxWidth(labelString: string, labelWidth: number, styleIndex: number): void

addComponent

  • addComponent<T>(classConstructor: Constructor<T>): T | null
  • addComponent(className: string): Component | null

destroy

  • destroy(): any

getComponent

  • getComponent<T>(classConstructor: Constructor<T>): T | null
  • getComponent(className: string): Component | null
  • 获取节点上指定类型的组件,如果节点有附加指定类型的组件,则返回,如果没有则为空。
    传入参数也可以是脚本的名称。

    example
    // get custom test calss.
    var test = node.getComponent("Test");

    Type parameters

    Parameters

    Returns T | null

  • 获取节点上指定类型的组件,如果节点有附加指定类型的组件,则返回,如果没有则为空。
    传入参数也可以是脚本的名称。

    example
    // get custom test calss.
    var test = node.getComponent("Test");

    Parameters

    • className: string

    Returns Component | null

getComponentInChildren

  • getComponentInChildren<T>(classConstructor: Constructor<T>): T | null
  • getComponentInChildren(className: string): Component | null

getComponents

  • getComponents<T>(classConstructor: Constructor<T>): T[]
  • getComponents(className: string): Component[]

getComponentsInChildren

  • getComponentsInChildren<T>(classConstructor: Constructor<T>): T[]
  • getComponentsInChildren(className: string): Component[]

Protected Optional lateUpdate

  • lateUpdate(dt: number): void
  • 如果该组件启用,则每帧调用 LateUpdate。
    该方法为生命周期方法,父类未必会有实现。并且你只能在该方法内部调用父类的实现,不可在其它地方直接调用该方法。

    Parameters

    • dt: number

      the delta time in seconds it took to complete the last frame

    Returns void

onDestroy

  • onDestroy(): void

onDisable

  • onDisable(): void

onEnable

  • onEnable(): void

Protected Optional onFocusInEditor

  • onFocusInEditor(): void

Protected Optional onLoad

  • onLoad(): void
  • 当附加到一个激活的节点上或者其节点第一次激活时候调用。onLoad 总是会在任何 start 方法调用前执行,这能用于安排脚本的初始化顺序。
    该方法为生命周期方法,父类未必会有实现。并且你只能在该方法内部调用父类的实现,不可在其它地方直接调用该方法。

    Returns void

Protected Optional onLostFocusInEditor

  • onLostFocusInEditor(): void

onRestore

  • onRestore(): void

postUpdateAssembler

  • postUpdateAssembler(render: UI): void

Protected Optional resetInEditor

  • resetInEditor(): void

schedule

  • schedule(callback: any, interval?: number, repeat?: number, delay?: number): void
  • 调度一个自定义的回调函数。
    如果回调函数已调度,那么将不会重复调度它,只会更新时间间隔参数。

    method

    schedule

    example
    var timeCallback = function (dt) {
      cc.log("time: " + dt);
    }
    this.schedule(timeCallback, 1);

    Parameters

    • callback: any

      回调函数。

    • Default value interval: number = 0

      时间间隔,0 表示每帧都重复。

    • Default value repeat: number = cc.macro.REPEAT_FOREVER

      将被重复执行(repeat+ 1)次,您可以使用 cc.macro.REPEAT_FOREVER 进行无限次循环。

    • Default value delay: number = 0

      第一次执行前等待的时间(延时执行)。

    Returns void

scheduleOnce

  • scheduleOnce(callback: any, delay?: number): void
  • 调度一个只运行一次的回调函数,可以指定 0 让回调函数在下一帧立即执行或者在一定的延时之后执行。

    method

    scheduleOnce

    see

    [[cc.Node.schedule]]

    example
    var timeCallback = function (dt) {
      cc.log("time: " + dt);
    }
    this.scheduleOnce(timeCallback, 2);

    Parameters

    • callback: any

      回调函数。

    • Default value delay: number = 0

      第一次执行前等待的时间(延时执行)。

    Returns void

setVisibility

  • setVisibility(value: number): void

start

  • start(): void

unschedule

  • unschedule(callback_fn: any): void

unscheduleAllCallbacks

  • unscheduleAllCallbacks(): void

Protected Optional update

  • update(dt: number): void
  • 如果该组件启用,则每帧调用 update。
    该方法为生命周期方法,父类未必会有实现。并且你只能在该方法内部调用父类的实现,不可在其它地方直接调用该方法。

    Parameters

    • dt: number

      the delta time in seconds it took to complete the last frame

    Returns void

updateAssembler

  • updateAssembler(render: UI): void

Static deferredDestroy

  • _deferredDestroy(): void

Generated using TypeDoc