29using namespace cocos2d::ui;
31UITextTests::UITextTests()
48 Size widgetSize =
_widget->getContentSize();
50 Text* alert = Text::create(
"Text",
"fonts/Marker Felt.ttf", 30);
51 alert->setColor(Color3B(159, 168, 176));
52 alert->setPosition(Vec2(widgetSize.width / 2.0f,
53 widgetSize.height / 2.0f
54 - alert->getContentSize().height * 1.75f));
58 Text* text = Text::create(
"Text",
"AmericanTypewriter", 30);
59 text->setPosition(Vec2(widgetSize.width / 2.0f,
60 widgetSize.height / 2.0f
61 + text->getContentSize().height / 4.0f));
75 Size widgetSize =
_widget->getContentSize();
77 Text* alert = Text::create(
"Text line wrap",
"fonts/Marker Felt.ttf",30);
78 alert->setColor(Color3B(159, 168, 176));
79 alert->setPosition(Vec2(widgetSize.width / 2.0f,
80 widgetSize.height / 2.0f
81 - alert->getContentSize().height * 1.75f));
85 Text* text = Text::create(
"TextArea Widget can line wrap",
86 "AmericanTypewriter",32);
87 text->ignoreContentAdaptWithSize(
false);
88 text->setContentSize(Size(280.0f, 150.0f));
89 text->setTextHorizontalAlignment(TextHAlignment::CENTER);
90 text->setTouchScaleChangeEnabled(
true);
91 text->setTouchEnabled(
true);
92 text->addTouchEventListener([=](Ref* sender, Widget::TouchEventType type)
94 if (type == Widget::TouchEventType::ENDED)
96 if ((
int)text->getContentSize().width == 280)
98 text->setContentSize(Size(380.0f,100.0f));
101 text->setContentSize(Size(280.0f, 150.0f));
105 text->setPosition(Vec2(widgetSize.width / 2.0f,
106 widgetSize.height / 2.0f
107 - text->getContentSize().height / 8.0f));
122 Size widgetSize =
_widget->getContentSize();
124 Text* alert = Text::create();
125 alert->setString(
"Label Effect");
126 alert->setFontName(
"fonts/Marker Felt.ttf");
127 alert->setFontSize(30);
128 alert->setColor(Color3B(159, 168, 176));
129 alert->setPosition(Vec2(widgetSize.width / 2.0f,
130 widgetSize.height / 2.0f
131 - alert->getContentSize().height * 3.05f));
136 Text* shadow_label = Text::create();
138 shadow_label->enableShadow();
139 shadow_label->setString(
"Shadow");
140 shadow_label->setFontName(
"fonts/Marker Felt.ttf");
141 shadow_label->setPosition(Vec2(widgetSize.width / 2.0f,
142 widgetSize.height / 2.0f
143 + shadow_label->getContentSize().height + 20));
149 Text* glow_label = Text::create();
150 glow_label->setFontName(
"fonts/Marker Felt.ttf");
151 glow_label->setString(
"Glow");
152 glow_label->enableGlow(Color4B::RED);
155 glow_label->setPosition(Vec2(widgetSize.width / 2.0f,
156 widgetSize.height / 2.0f - 20));
162 Text* outline_label = Text::create();
163 outline_label->setString(
"Outline");
164 CCLOG(
"content size without outline: %f %f",
165 outline_label->getContentSize().width,
166 outline_label->getContentSize().height);
167 outline_label->enableOutline(Color4B::GREEN, 4);
168 outline_label->setPosition(Vec2(widgetSize.width / 2.0f,
169 widgetSize.height / 2.0f
170 - shadow_label->getContentSize().height - 50));
173 CCLOG(
"content size after applying outline: %f %f",
174 outline_label->getContentSize().width,
175 outline_label->getContentSize().height);
178 auto disableOutlineBtn= Button::create();
179 disableOutlineBtn->setTitleText(
"Disable outline");
180 disableOutlineBtn->setTitleFontName(
"fonts/Marker Felt.ttf");
181 disableOutlineBtn->setPosition(Vec2(widgetSize.width * 0.3f,
182 widgetSize.height * 0.7f));
183 disableOutlineBtn->setPressedActionEnabled(
true);
184 disableOutlineBtn->addClickEventListener([=](Ref*){
185 outline_label->disableEffect(LabelEffect::OUTLINE);
186 CCLOG(
"content size after disable outline: %f %f",
187 outline_label->getContentSize().width,
188 outline_label->getContentSize().height);
190 this->addChild(disableOutlineBtn);
192 auto buttonWidth = disableOutlineBtn->getContentSize().width;
194 auto disableGlowBtn = (Button*)disableOutlineBtn->clone();
195 disableGlowBtn->setPosition(disableOutlineBtn->getPosition()
196 + Vec2(buttonWidth + 40,0.0f));
197 disableGlowBtn->setTitleText(
"Disable Glow");
198 disableGlowBtn->addClickEventListener([=](Ref*){
199 glow_label->disableEffect(LabelEffect::GLOW);
201 this->addChild(disableGlowBtn);
203 auto disableShadowBtn = (Button*)disableGlowBtn->clone();
204 disableShadowBtn->setPosition(disableGlowBtn->getPosition()
205 + Vec2(buttonWidth + 40,0.0f));
206 disableShadowBtn->setTitleText(
"Disable Shadow");
207 disableShadowBtn->addClickEventListener([=](Ref*){
208 shadow_label->disableEffect(LabelEffect::SHADOW);
210 this->addChild(disableShadowBtn);
225 Size widgetSize =
_widget->getContentSize();
227 Text* alert = Text::create(
"Text set TTF font",
228 "fonts/Marker Felt.ttf",30);
229 alert->setColor(Color3B(159, 168, 176));
230 alert->setPosition(Vec2(widgetSize.width / 2.0f,
231 widgetSize.height / 2.0f
232 - alert->getContentSize().height * 1.75f));
236 Text* text = Text::create(
"Text",
"fonts/A Damn Mess.ttf",30);
237 text->setPosition(Vec2(widgetSize.width / 2.0f,
238 widgetSize.height / 2.0f
239 + text->getContentSize().height / 4.0f));
253 Size widgetSize =
_widget->getContentSize();
255 Text* leftText = Text::create(
"ignore content",
256 "fonts/Marker Felt.ttf",10);
257 leftText->setPosition(Vec2(widgetSize.width / 2.0f - 50,
258 widgetSize.height / 2.0f));
259 leftText->ignoreContentAdaptWithSize(
false);
260 leftText->setTextAreaSize(Size(60.0f,60.0f));
261 leftText->setString(
"Text line with break\nText line with break\nText line with break\nText line with break\n");
262 leftText->setTouchScaleChangeEnabled(
true);
263 leftText->setTouchEnabled(
true);
267 Text* rightText = Text::create(
"ignore content",
268 "fonts/Marker Felt.ttf",10);
269 rightText->setPosition(Vec2(widgetSize.width / 2.0f + 50,
270 widgetSize.height / 2.0f));
271 rightText->setString(
"Text line with break\nText line with break\nText line with break\nText line with break\n");
273 rightText->setTextAreaSize(Size(100.0f,30.0f));
274 rightText->ignoreContentAdaptWithSize(
false);
278 auto halighButton = Button::create();
279 halighButton->setTitleText(
"Alignment Right");
280 halighButton->addClickEventListener([=](Ref*){
281 leftText->setTextHorizontalAlignment(TextHAlignment::RIGHT);
282 rightText->setTextHorizontalAlignment(TextHAlignment::RIGHT);
284 halighButton->setPosition(Vec2(widgetSize.width/2 - 50,
285 widgetSize.height/2 - 50));
299 Size widgetSize =
_widget->getContentSize();
301 Text* singleText = Text::create(
"ignore content",
302 "fonts/Marker Felt.ttf", 30);
303 singleText->setPosition(Vec2(widgetSize.width / 2.0f - 80,
304 widgetSize.height / 2.0f));
305 singleText->setString(
"CHUKONG");
306 singleText->setTouchScaleChangeEnabled(
true);
307 singleText->setTouchEnabled(
true);
308 singleText->enableOutline(Color4B(255,0,0,100), 10);
309 singleText->enableShadow(Color4B::YELLOW, Size(2,-2), 0);
312 auto cloneText = singleText->clone();
313 cloneText->setPosition(Vec2(widgetSize.width / 2.0f + 80,
314 widgetSize.height / 2.0f));
328 Size widgetSize =
_widget->getContentSize();
330 Text* singleText = Text::create(
"mwhahaha\360",
"Verdana", 40);
332 singleText->setPosition(Vec2(widgetSize.width / 2.0f - 80,
333 widgetSize.height / 2.0f));
#define ADD_TEST_CASE(__className__)
virtual bool init() override
virtual bool init() override
cocos2d::Layer * _uiLayer
virtual bool init() override
cocos2d::ui::Layout * _widget
virtual bool init() override
virtual bool init() override
virtual bool init() override
virtual bool init() override
virtual bool init() override