cocos2dx 3.x 公告欄 通知欄 滾動(dòng)字幕 區(qū)域彈幕 區(qū)域顯示 實(shí)現(xiàn)

本文介紹游戲中常見(jiàn)的滾動(dòng)播放的公告欄實(shí)現(xiàn)

要點(diǎn)

  • 文字內(nèi)容橫向或者縱向滾動(dòng)
  • 文字只在區(qū)域內(nèi)顯示拔创,超出區(qū)域部分不顯示

相關(guān)頭文件

** "2d/CCClippingNode.h" **
注意:在cocos2dx 3.x版本中洽沟,方法名中的CC命名方式已經(jīng)棄用,但是文件名中的CC依然有,所以此處的頭文件名中的CC打頭無(wú)法去除

實(shí)現(xiàn)

頭文件

#pragma once
#include "cocos2d.h"
#include "2d/CCClippingNode.h"
USING_NS_CC;

class PannelNews :public Node
{
protected:
  Node* _holder;
  Sprite* _newsBg;
  Label* _news;
  DrawNode* _shap;
  ClippingNode* _cliper;

public:
  PannelNews();
  ~PannelNews();
  virtual bool init() override;

  void layout();
  void scrollText(float);

  CREATE_FUNC(PannelNews);
};

源文件

#include "PannelNews.h"

PannelNews::PannelNews()
{
  _holder = NULL;
  _newsBg = NULL;
  _news = NULL;
  _shap = NULL;
  _cliper = NULL;
}

PannelNews::~PannelNews() {}

bool PannelNews::init()
{
  if (!Node::init())
    return false;
  setPosition(Point(640.f, 585.f));
  _holder = Node::create();
  addChild(_holder);
  _newsBg = Sprite::create("newsBg.png");
  _holder->addChild(_newsBg);

  _shap = DrawNode::create();
  Point point[4] = { Point(60.f,0.f), Point(710.f,0.f), Point(710.f,35.f),   Point(60.f,35.f)};
  //標(biāo)記顯示的矩形區(qū)域

  _shap->drawPolygon(point, 4, Color4F(355, 255, 255, 255), 2, Color4F(255, 255, 255, 255));
  //剪切用于顯示的矩形區(qū)域憨栽,參數(shù)對(duì)應(yīng):用于標(biāo)識(shí)區(qū)域的Point(Vec2)數(shù)組指針浓领,數(shù)組長(zhǎng)度反镇,填充顏色,邊框?qū)挾人突穑吙蝾伾?  _cliper = ClippingNode::create();
  _cliper->setStencil(_shap);
  _cliper->setAnchorPoint(Point(0.5, 0.5));
  _newsBg->addChild(_cliper);

  _news = Label::createWithSystemFont(UserDefault::getInstance()->getStringForKey(KEY_LOCAL_NEWS, "公告內(nèi)容"), "Microsoft Yahei", 24);
  _news->setColor(Color3B(214, 213, 213));
  _cliper->addChild(_news);

  layout();
  return true;
}

void PannelNews::layout()
{
 _news->setAnchorPoint(Point::ZERO);
 _news->setPosition(Point(720, 10));//設(shè)置公告文字內(nèi)容的初始位置
 schedule(schedule_selector(PannelNews::scrollText));//實(shí)現(xiàn)公告文字滾動(dòng)
}

void PannelNews::scrollText(float)
{
 _news->getPosition().x < (-1 * _news->getContentSize().width) ? _news->setPositionX(720) : _news->setPositionX(_news->getPositionX() - 2);
}
  • ClippingNode可以用于設(shè)定一個(gè)區(qū)域作為其顯示區(qū)域,其子節(jié)點(diǎn)只可在該區(qū)域內(nèi)才可顯示先匪,超出區(qū)域部分則無(wú)法顯示种吸,可用于公告、通知呀非、聊天框坚俗、區(qū)域彈幕、彈幕游戲的保護(hù)罩等
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末岸裙,一起剝皮案震驚了整個(gè)濱河市猖败,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌降允,老刑警劉巖恩闻,帶你破解...
    沈念sama閱讀 211,639評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異剧董,居然都是意外死亡幢尚,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)翅楼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)尉剩,“玉大人,你說(shuō)我怎么就攤上這事毅臊±砭ィ” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,221評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵管嬉,是天一觀的道長(zhǎng)皂林。 經(jīng)常有香客問(wèn)我,道長(zhǎng)宠蚂,這世上最難降的妖魔是什么式撼? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,474評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮求厕,結(jié)果婚禮上著隆,老公的妹妹穿的比我還像新娘。我一直安慰自己呀癣,他們只是感情好美浦,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,570評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著项栏,像睡著了一般浦辨。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上沼沈,一...
    開(kāi)封第一講書(shū)人閱讀 49,816評(píng)論 1 290
  • 那天流酬,我揣著相機(jī)與錄音币厕,去河邊找鬼。 笑死芽腾,一個(gè)胖子當(dāng)著我的面吹牛旦装,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播摊滔,決...
    沈念sama閱讀 38,957評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼阴绢,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了艰躺?” 一聲冷哼從身側(cè)響起呻袭,我...
    開(kāi)封第一講書(shū)人閱讀 37,718評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎腺兴,沒(méi)想到半個(gè)月后左电,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,176評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡含长,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,511評(píng)論 2 327
  • 正文 我和宋清朗相戀三年券腔,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拘泞。...
    茶點(diǎn)故事閱讀 38,646評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡纷纫,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出陪腌,到底是詐尸還是另有隱情辱魁,我是刑警寧澤,帶...
    沈念sama閱讀 34,322評(píng)論 4 330
  • 正文 年R本政府宣布诗鸭,位于F島的核電站染簇,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏强岸。R本人自食惡果不足惜锻弓,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,934評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蝌箍。 院中可真熱鬧青灼,春花似錦、人聲如沸妓盲。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,755評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)悯衬。三九已至弹沽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背策橘。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,987評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工炸渡, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人役纹。 一個(gè)月前我還...
    沈念sama閱讀 46,358評(píng)論 2 360
  • 正文 我出身青樓偶摔,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親促脉。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,514評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,771評(píng)論 25 707
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)策州、插件瘸味、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,064評(píng)論 4 62
  • 農(nóng)歷新年的鐘聲即將敲響,祖國(guó)上下沉浸在一片歡騰之中够挂。 新年的鐘聲催動(dòng)了游子回家的步伐旁仿。在外忙碌了一年的游子在將要敲...
    秦嶺耕夫閱讀 585評(píng)論 0 3
  • 這天上午,倆人約好去民政局登記孽糖。 臨出發(fā)前枯冈,童小路細(xì)細(xì)檢查,倆人的身份證办悟;各自單位尘奏、學(xué)校的證明,蓋著鮮紅的印章病蛉;他...
    小樹(shù)洞君閱讀 347評(píng)論 2 2