【LG008.控件篇】简单控件之LButton

LGame学堂008简单控件之LButton

注:以下内容是昨晚写的,不是今天写的。

在是深圳时间晚上 2243分,好吧,笨木头我是一个不合格的程序员, 23点开始我就可以上床睡大觉 ~所以,我这么努力地写心得,大觉多多支持 ~(耶 ~苦肉计得逞 ~

~本章来看看咱们游戏里必不可少的控件——按钮。

这是 LGame里最简单的控件之一了,直接上代码呗:

public class GameScreen extends Screen { @Override public void onLoad() { LButton btn = new LButton("assets/btn.png"); btn.setLocation(100, 100); add(btn); } @Override public void alter(LTimerContext arg0) { } @Override public void draw(LGraphics arg0) { } @Override public void onTouchDown(LTouch arg0) { } @Override public void onTouchMove(LTouch arg0) { } @Override public void onTouchUp(LTouch arg0) { } }


糕,有点过于简单,以至于我不知道怎么讲解了 ~ 嘻嘻

好吧,这样就创建了一个背景图片为"assets/btn.png"且坐标在
(100, 100) 的按钮了 ~

然,最重要的是 add(btn) 这一步,如果大家有下载 LGame 源码的,就可以看到,这一步,实际上是调用了 Screen add() 函数:

public void add(LComponent comp) { if (desktop != null) { desktop.add(comp); } }



果大家对上一章的内容还有印象的话,那就应该很清楚了, add 函数就是把按钮添加到 desktop 里了。

OK ,来点有意思的——点击事件。
点击事件是一个按钮必须有的嘛,没了它,按钮就有没有什么存在的意义了
~
来,看看 LButton 是怎么添加点击事件的吧:


LButton btn = new LButton("assets/btn.png") { @Override public void doClick() { Log.d("LGameStudy", "糟糕,这样的设置方式是不是有点不习惯?"); } }; btn.setLocation(100, 100); add(btn);



的,如果你是我的忠实读者的话,你应该还记得“钩子函数”(好吧,我开玩笑的,相信聪明的你早就知道钩子函数了 ~)。其实 LButton的点击事件也是通过钩子函数的方法来实现的。 LButton有个 doClick()函数,只要我们重写这个函数,就可以实现点击事件了。 OK,聪明的你,相信不需要我再解释了 ~

啰嗦一下:
实我个人还是比较喜欢 Android自带 Button的那种设置点击事件的方法的(用 setOnClickListener()方法),总感觉 LGame这种方式有点不习惯,嘿嘿,个人爱好而已 ~


~咱们再来看看一个让人兴奋的功能好不好?~
~

LImage[] imgs = new LImage[] {LImage.createImage("assets/btn.png"), LImage.createImage("assets/btnOn.png"), }; btn.setImages(imgs);




们来看看LButton的setImages(LImage[] imgaes)函数,这个函数有什么用呢?很神奇的,看看官方的解释:

插入一组图像(1-4张皆可,超出忽略不计),并将它们作为LButton的按钮显示用图,以分别对应按钮未点击、点击、屏幕划过以及其它状态。

小弟暂时只试过前面两种状态,各位感兴趣的可以自己研究一下哈~

好吧,我蛮困的了,关于LButton,我就讲到这里啦,大家可以自己研究一下其它功能,关于LButton,官方文档有API的解释。

-

-

原文第一次发布于Android-Fans论坛:

http://www.android-fans.net/thread-1576-1-1.html


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值