• 【咸鱼教程】可自动滚动的聊天文本框


    教程目录 
    一 演示效果
    二 实现原理
    三 代码
    四 Demo下载


    一 演示效果
     


    二 实现原理

    Scroller + Label实现
     


    Label动态高度,随着输入文本增加而增加。
    每输入一行,则将Scroller的视口viewport垂直位置scrollV对齐到Label底端。

    三 代码


    exml
     

    代码

    [Actionscript3] 纯文本查看 复制代码
    01
    02
    03
    04
    05
    06
    07
    08
    09
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    /**
     * 主页场景
     * @author chenkai
     * [url=home.php?mod=space&uid=81950]@since[/url] 2017/4/20
     *
     * 实现可自行滚动的聊天文本框
     */
    class HomeScene extends eui.Component{
            private chatLabel:eui.Label;          //聊天记录
            private inputLabel:eui.EditableText;  //输入文本
            private okBtn:eui.Rect;               //确定
            private chatScroller:eui.Scroller;    //聊天记录滚动容器
     
            public constructor() {
                    super();
                    this.skinName = "HomeSceneSkin";
            }
     
            public childrenCreated(){
                    this.okBtn.addEventListener(egret.TouchEvent.TOUCH_TAP, this.onOkTouch, this);
            }
     
            private onOkTouch(){
                    //显示聊天记录
                    if(this.chatLabel.text != ""){
                            this.chatLabel.text +=  " " + this.inputLabel.text;
                    }else{
                            this.chatLabel.text +=  this.inputLabel.text;
                    }
                     
                    //文本高度大于滚动容器高度时,将视口置于文本最后一行
                    if(this.chatLabel.height > this.chatScroller.height){
                            this.chatScroller.viewport.scrollV = this.chatLabel.height - this.chatScroller.height;
                    }
     
                    //清空输入文本
                    this.inputLabel.text = "";
            }
    }



    Demo下载

  • 相关阅读:
    25个PHP游戏编程脚本代码(转)
    [AJAXJSP]使用DWR框架验证用户名是否存在
    [AJAXJSP]验证用户名存在
    [Java基础]多线程求和小例子
    [JAVA算法]求子数组的最大和
    [JQury] slideToggle闪烁问题及解决办法
    [JAVA算法]递归求Fibbonicc序列方法
    Easy ui Datagrid(下拉、复选、只输入数字、文本) 追加、删除、更改
    Easy ui DataGrid 添加复选框 与 下拉
    Easy ui DataGrid 列文字多串行问题解决方案
  • 原文地址:https://www.cnblogs.com/gamedaybyday/p/9219933.html
Copyright © 2020-2023  润新知