愤怒的小鸟选关卡界面制作

先回观几张大家熟悉的效果图:

 

这个界面大家非常熟悉,现在小弟就想做这个效果。
先讲下我的思路:
第一步:动态选择排版样式
由于这里有四种界面效果,每张界面上的按钮数量不同,也就是说有不同的四种不同的排班,所以我考虑到设计排班的问题如下:(说明:count关卡数)
15<count<=21时,采用第1张图片的排版3*7的样式
12<count<=15时,采用第2张图片的排版3*5的样式
6<count<=12时,采用第3张图片的排版2*6的样式
     count<=6时,采用第4张图片的排版2*3的样式
第二步:动态创建自定义button
既然上面基本版样式已经选择好了,接下来就是动态添加button到网格布局中。
第三步:将布局添加Gallery和Button,然后就可以创建关卡界面GridView了。这个动态界面的创建根据存放背景图片的数组backImg[]来动态创建。

源代码下载:http://download.csdn.net/detail/aa4790139/4019204

效果如下:

这个效果还算不错,能满足需求。要想跟上面愤怒的小鸟选关界面,是有欠缺问题的:

1、Gallery的卷动轴效果为左右的两边的阴影(用红笔圈出来的效果),把这种去掉,改成上小鸟界面的三点显示效果:

2、自定义适配器继承BaseAdapter中getView方法中,将其中的ImageView改成Button,相应就没有反应了呢?这是为什么呢?

3、滑动区域只为最下按钮一排才有效,还有就是当滑到2/3的时候而此时我的手指有没有松开,却会自动选择显示大View的界面。

4、当滑到最左的时候,滑不动了。想弄成滑到最左端的时候还是可以滑动,只是左边没有显示,松手后有自动弹回来的效果。

小弟暂时没有解决,忘后面解决的朋友告诉我,也跟大家分享分享。谢谢!

以下是一个简单的Java代码,实现了愤怒小鸟游戏的基本功能: ``` import java.awt.*; import java.awt.event.*; import javax.swing.*; public class AngryBirds extends JFrame implements ActionListener { private static final long serialVersionUID = 1L; private JButton launchButton; private JPanel gamePanel; private JLabel scoreLabel; private int score = 0; public AngryBirds() { setTitle("Angry Birds"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(800, 600); // 创建游戏面板 gamePanel = new JPanel(); gamePanel.setBackground(Color.WHITE); gamePanel.setLayout(null); // 创建发射按钮 launchButton = new JButton("Launch"); launchButton.setBounds(350, 500, 100, 40); launchButton.addActionListener(this); gamePanel.add(launchButton); // 创建分数标签 scoreLabel = new JLabel("Score: " + score); scoreLabel.setBounds(10, 10, 100, 30); gamePanel.add(scoreLabel); // 添加游戏面板到窗口 getContentPane().add(gamePanel); setVisible(true); } public void actionPerformed(ActionEvent e) { // 点击发射按钮时,启动小鸟飞行动画,并更新分数 score += 10; scoreLabel.setText("Score: " + score); launchBird(); } private void launchBird() { // 在游戏面板上启动小鸟飞行动画 // 省略代码... } public static void main(String[] args) { new AngryBirds(); } } ``` 这是一个简单的实现,实际的愤怒小鸟游戏需要更多的功能和复杂的逻辑,例如小鸟的移动、猪的碰撞检测、不同的关卡等等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Potter

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值