kag的button的文字显示

 

该教程为水螅制作,未经允许,请勿转载

 

其实我是个懒得写新的class的人……一般遇到什么问题都喜欢直接去改kag已有的类……导致每个坑的system都被我改的面目全非而且无法通用……=_=

今日的system修改讲座是给button的图片上写字……(什么时候变成讲座了啊喂)

还是像slider一样……我说的单纯是我自己惯用的修改方式,其他人可能有不同的修改方式,本来这种东西就很自由的……我只是把这个写出来给大家一个思路参考而已……

kag的button是在current的message层上用addbutton加了一个LinkButtonLayer(新版本的KageXpress里如果用anigraphic的话就新建了船长写的LinkButtonLayerEx,一般大部分人还是用naomal over的吧……这里先不管他……)

LinkButtonLayer继承的是ButtonLayer,这种按钮图层有两种模式,一种是使用图片,不管是graphic还是normal,最后都被copy到一个层上,然后通过调整层的位置来改变显示的部分,令一种是使用色块,上边写字,不过这一种kag貌似完全没传参数过来,于是已经被大家遗忘在历史的角落了……(其实很多人连知道他的存在都谈不上就更提不上遗忘了……)

我们的目标是在kag里写[button narmal=’xx‘ over='xxx' on='xxxx' text='aa']这样的指令的时候aa能显示在button的图片上,那么得在addbutton里边加入一句参数传递“object.text=elm.text;”

但是ButtonLayer类里并没有text这个属性,于是需要在这个类里加一句var text;

然后text传入后写到按钮图片上去,是在drawState(s)的if(Butt_imageLoaded)里边,写drawtext就行了,居中还是靠左,字体设定,颜色之类的都随便设置,位置是0-width是normal上的字,width-width*2是over上的字……width*2-width*3是over上的字……一共要写4个位置的drawtext,有耐心的话可以把不同状态的字的颜色改变下,比如over的时候字的颜色设置的亮一点什么的……这都很自由……更有耐心的话可以把字体颜色字体规格之类的也都设成参数在kag里写……



TOP

访客数: 3128059
aa