本文整理汇总了C++中CImageView::setOnPressListener方法的典型用法代码示例。如果您正苦于以下问题:C++ CImageView::setOnPressListener方法的具体用法?C++ CImageView::setOnPressListener怎么用?C++ CImageView::setOnPressListener使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CImageView
的用法示例。
在下文中一共展示了CImageView::setOnPressListener方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: updateTotoalSign
void CSignLayer::updateTotoalSign()
{
//更新
//已领取的,宝箱变灰,加对勾
//未领取的,宝箱变亮,
//将要领取的,加黄色标题突出
for (int i = 0; i < m_signData.totalList.size()&&i<4; i++)
{
CSign &sign = m_signData.totalList.at(i);
//宝箱
CImageView *mask = (CImageView*)m_ui->findWidgetById(CCString::createWithFormat("mask%d",i+1)->getCString());
mask->setVisible(true);
//mask->setTexture(CCTextureCache::sharedTextureCache()->addImage(CCString::createWithFormat("sign/box_%d.png", i+1)->getCString()));
mask->setUserData(&sign);
mask->setTouchEnabled(true);
mask->setOnPressListener(this, ccw_press_selector(CSignLayer::onPress));
//天数
CLabel *day = (CLabel*)(m_ui->findWidgetById(CCString::createWithFormat("day%d",i+1)->getCString()));
day->setString(CCString::createWithFormat(GETLANGSTR(209),sign.day)->getCString());
//获得字样
CImageView *getspr = (CImageView*)(m_ui->findWidgetById(CCString::createWithFormat("get%d",i+1)->getCString()));
//已领取
if (sign.status==1)
{
//宝箱变灰
mask->setShaderProgram(ShaderDataMgr->getShaderByType(ShaderStone));
//加对勾
getspr->setVisible(true);
}
//未领取
else if(sign.status==2)
{
//宝箱变灰
mask->setShaderProgram(ShaderDataMgr->getShaderByType(ShaderDefault));
//加对勾
getspr->setVisible(false);
}
}
}
示例2: addGridCell
void CSignLayer::addGridCell(unsigned int uIdx, CGridViewCell* pCell)
{
// CHero *hero = m_currHeroList->at(uIdx);
CSign &sign = m_signData.signList.at(uIdx);
CLayout *lay = UICloneMgr::cloneLayout(m_cell);
pCell->setScale(0.97f);
for (int i = 1; i <=4; i++)
{
CCNode *child = lay->getChildByTag(i);
lay->removeChild(child);
pCell->addChild(child);
}
CImageView *imagView = (CImageView*)pCell->getChildByTag(1);
imagView->setTouchEnabled(true);
imagView->setEnabled(true);
imagView->setUserData(&m_signData.signList.at(uIdx));
imagView->setOnPressListener(this, ccw_press_selector(CSignLayer::onPress));
CCSprite *item = nullptr;
if (sign.prize.thumb>=0)
{
CImageView * pMask = (CImageView*)pCell->getChildByTag(2);
SmartSetRectPrizeColor(pMask, &sign.prize);
item = CCSprite::create(GetImageName(sign.prize.type, sign.prize.color, sign.prize.thumb).c_str());
if(!item)
{
item = CCSprite::create("headImg/101.png");
CCLOG("CSignLayer::addGridCell error load image %d", sign.prize.thumb);
}
item->setPosition(ccp(pMask->getContentSize().width/2, pMask->getContentSize().height/2));
pMask->addChild(item, -1, 2);
item->setScale(0.9f);
//加数字
CCLabelAtlas* haveNum = CCLabelAtlas::create("", "label/no_02.png", 9, 15, 46);
haveNum->setAnchorPoint(ccp(1.0f, 0.0f));
haveNum->setPosition(ccp(85, 5));
pMask->addChild(haveNum, 99, 99);
haveNum->setString(ToString(sign.prize.num));
if(sign.prize.num<=1)
{
haveNum->setVisible(false);
}
//添加星星
if(sign.prize.quality > 0)
{
CLayout* pStarLayout = SmartGetStarLayout(&sign.prize);
pMask->addChild(pStarLayout, 211, 211);
}
}
//vip icon
CCSprite *vip = (CCSprite*)pCell->getChildByTag(3);
if (sign.vip>0)
{
CCTexture2D *texture = CCTextureCache::sharedTextureCache()
->addImage(CCString::createWithFormat("public/vip_%d.png",sign.vip)->getCString());
vip->setVisible(true);
vip->setTexture(texture);
}
else
{
vip->setVisible(false);
}
switch (sign.status)
{
//没签
case 2:
{
//对勾
pCell->getChildByTag(4)->setVisible(false);
//考虑是否加个框标示为可签
if(uIdx == m_signData.sign &&
(m_signData.bCanSign || (m_signData.bCanResign && m_signData.resign>0) ) )
{
CImageView * pMask = (CImageView*)pCell->getChildByTag(2);
CCSprite* pRect = CCSprite::create("common/box_light.png");
pRect->setPosition(ccp(pMask->getPositionX()+pMask->getContentSize().width/2, pMask->getPositionY()+pMask->getContentSize().height/2));
pCell->addChild(pRect, 100);
pRect->runAction(CCRepeatForever::create(CCSequence::createWithTwoActions(CCScaleTo::create(0.3f, 1.03f), CCScaleTo::create(0.3f, 1.0f))));
}
}
break;
//已签
case 1:
{
//对勾
pCell->getChildByTag(4)->setVisible(true);
//变黑
pCell->getChildByTag(1)->setShaderProgram(ShaderDataMgr->getShaderByType(ShaderStone));
pCell->getChildByTag(2)->setShaderProgram(ShaderDataMgr->getShaderByType(ShaderStone));
//.........这里部分代码省略.........