谁实现过菜单的淡入淡出效果?

Careerman_Symbian 2007-07-09 05:10:58
有相关的例子吗?给个思路也可,我是郁闷了好久了,也没想出这种效果怎么实现的.多谢啦~~~
...全文
334 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoyao888 2007-07-16
  • 打赏
  • 举报
回复
菜单是事先做好的图片,当然也可以用代码现画。
改变透明度是在活动对象里调用该函数,传入递增的aAlpha,直到aAlpha=255
这个和背景色是否单一没有关系,我的这个函数是合成两个位图用的。执行完后直接输出到屏幕上就行了。
xiaoyao888 2007-07-16
  • 打赏
  • 举报
回复
看看我写的一个贴图函数
http://blog.csdn.net/xiaoyao888/archive/2006/08/27/1129332.aspx

半透是在此基础上改的。修改的部分如下
if(aMask)
{
//转换RGB色为TUint16表示的4K色
TInt maskcolor=aMaskColor.Color4K();

while( p2 < p2end)
{
TUint16* p2endline = p2 + rectw;

while(p2!=p2endline)
{
if( *p2!=maskcolor)
{
//下面是实现半透的部分

TUint16 Rtc=((*p1) & 0xf00)>>8;
TUint16 Gtc=((*p1) & 0xf0)>>4;
TUint16 Btc=(*p1) & 0xf;

TUint16 Rpc=((*p2) & 0xf00)>>8;
TUint16 Gpc=((*p2) & 0xf0)>>4;
TUint16 Bpc=(*p2) & 0xf;

TUint8 talpha = aAlpha/0x10;
Rtc=(Rpc*talpha+Rtc*(0x10-talpha))/0x10;
Gtc=(Gpc*talpha+Gtc*(0x10-talpha))/0x10;
Btc=(Bpc*talpha+Btc*(0x10-talpha))/0x10;

*p1 = (Rtc<<8) + (Gtc<<4) + Btc;


}
p1++;
p2++;
}
p1+=jump1;
p2+=jump2;
}
}
else
{
while( p2 < p2end)
{

TUint16* p2endline = p2 + rectw;

while(p2!=p2endline)
{

//*p1 = *p2;

TUint16 Rtc=((*p1) & 0xf00)>>8;
TUint16 Gtc=((*p1) & 0xf0)>>4;
TUint16 Btc=(*p1) & 0xf;

TUint16 Rpc=((*p2) & 0xf00)>>8;
TUint16 Gpc=((*p2) & 0xf0)>>4;
TUint16 Bpc=(*p2) & 0xf;

TUint8 talpha = aAlpha/0x10;
Rtc=(Rpc*talpha+Rtc*(0x10-talpha))/0x10;
Gtc=(Gpc*talpha+Gtc*(0x10-talpha))/0x10;
Btc=(Bpc*talpha+Btc*(0x10-talpha))/0x10;

*p1 = (Rtc<<8) + (Gtc<<4) + Btc;

p1++;
p2++;
}

p1+=jump1;
p2+=jump2;

}
}

增加的参数TUint8 aAlpha,0表示透明,因为是后加的,所以也许会有点问题吧
Careerman_Symbian 2007-07-16
  • 打赏
  • 举报
回复
你的意思是菜单是事先做好的图片吗?
Careerman_Symbian 2007-07-16
  • 打赏
  • 举报
回复
能否分享一下,改变图片透明度是如何操作的?如果我的背景色不是单一的,该如何处理?
Careerman_Symbian 2007-07-16
  • 打赏
  • 举报
回复
看到了,呵呵,逍遥,你的确牛啊
xiaoyao888 2007-07-13
  • 打赏
  • 举报
回复
http://hiphotos.baidu.com/zhxhy/pic/item/2a0c94ef292cee31acafd5aa.jpg
这个呢
anel 2007-07-13
  • 打赏
  • 举报
回复
还有一招,以fade关键词,在SDK文档搜索一次,寻找如何设置淡出属性的方法
Careerman_Symbian 2007-07-13
  • 打赏
  • 举报
回复
逍遥,真的看不了,能不能再想格办法
xiaoyao888 2007-07-12
  • 打赏
  • 举报
回复
怎么会,那两行是一个链接
Careerman_Symbian 2007-07-12
  • 打赏
  • 举报
回复
晕,你给的链接,我什么都看不到
北方大冬瓜 2007-07-10
  • 打赏
  • 举报
回复
自己画,应该不难实现
xiaoyao888 2007-07-10
  • 打赏
  • 举报
回复
虽然没做过,但我想就是自己画菜单,在出现和消失时用一段改变透明度的动画来实现,动画就用活动对象就成了。
xiaoyao888 2007-07-10
  • 打赏
  • 举报
回复
淡出我想就是把这个过程反过来就成了
xiaoyao888 2007-07-10
  • 打赏
  • 举报
回复
我按我的想法做了个效果出来
http://us.f13.yahoofs.com/bc/4671f10f_1705b/bc/%ce%d2%b5%c4%ce%c4%bc%fe/pop.gif?bfNQ5kGBAIVa7ERG

lz看看是不是符合你说的,模拟器帧数太低,gif图也不可能很快,所以效果有些差
Careerman_Symbian 2007-07-10
  • 打赏
  • 举报
回复
好,有好消息告诉我们
xiaoyao888 2007-07-10
  • 打赏
  • 举报
回复
我觉的可行,因为滑动弹出式菜单我就是这么做的,我先尝试一下。
Careerman_Symbian 2007-07-10
  • 打赏
  • 举报
回复
赵逍遥,你说的方法我觉得不可取,很多人都没有做过尝试这样的效果,但我觉得实现起来应该不是不是那么简单,我没有办法,希望我们能讨论一下
erener 2007-07-09
  • 打赏
  • 举报
回复
关注。。。。

菜单如果不采用系统的(占用了屏幕整个宽度)

如果自己重写菜单,比如自己画个好的背景 或者社定一个rect大小, 有没有人有解决思路啊
Careerman_Symbian 2007-07-09
  • 打赏
  • 举报
回复
图片的淡入淡出是怎么实现的?是不是手法一样?

3,119

社区成员

发帖
与我相关
我的任务
社区描述
塞班系统(Symbian系统)是塞班公司为手机而设计的操作系统,它的前身是英国宝意昂公司的 EP ( Electronic Piece of cheese)操作系统。
社区管理员
  • Symbian社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧