在开发游戏的时候,开始游戏时需要几个难度选择的选项供用户选择。实现这种效果也不难,下面是实现的一个小例子
NewGameActivity.java
package com.hualang.gotogame;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class NewGameActivity extends Activity {
private Button clickme;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
clickme = (Button)findViewById(R.id.clickme);
clickme.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v) {
startNewGameDialog();
}
});
}
private void startNewGameDialog()
{
new AlertDialog.Builder(this)
.setTitle(R.string.game_level)
.setItems(R.array.difficulty,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
startGame(which);
}
}).show();
}
private void startGame(int i)
{
//开始游戏
}
}
strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, NewGameActivity!</string>
<string name="btntext">开始游戏</string>
<string name="app_name">NewGame</string>
<string name="game_level">游戏级别</string>
<string name="easy_level">菜鸟级</string>
<string name="general_level">普通级</string>
<string name="medium_level">高手级</string>
<string name="hard_level">骨灰级</string>
</resources>
arrays.xml
是难度选择列表
<?xml version="1.0" encoding="utf-8"?>
<resources>
<array name="difficulty">
<item>@string/easy_level</item>
<item>@string/general_level</item>
<item>@string/medium_level</item>
<item>@string/hard_level</item>
</array>
</resources>
程序中的setItems()方法有两个参数:条目列表的资源ID和一个监听器,用户选择某个条目时,该监听器将被调用。
运行结果如下:
- 大小: 15.5 KB
- 大小: 27.5 KB
分享到:
相关推荐
本篇主要围绕"Android杂谈---Nexus S的ROOT教程"展开,讲解如何为Nexus S这款经典的Android设备获取ROOT权限,并涉及与之相关的源码和工具。 首先,我们需要理解ROOT是什么。在Android操作系统中,ROOT权限相当于...
在Android 6.0(API级别23)及更高版本,系统引入了Doze模式和App Standby,这两种电源管理机制会影响`AlarmManager`的行为。在这些模式下,为了节省电池,系统的闹钟触发可能会被延迟。开发者需要对此有所了解,...
在"swing开发杂谈--初版本程序源码"中,可能包含了上述部分或全部知识点的实际应用,通过分析`netHelper`这个子文件夹,我们可以看到可能的网络辅助类或其他功能模块的实现。这个源码可能会演示如何使用Swing构建一...
标题中的“杂谈----1 显示横向滚动条”暗示了我们将会探讨的是关于在界面设计中如何实现或处理横向滚动条的技术问题。这通常涉及到前端开发,特别是网页或应用程序的用户界面(UI)部分,其中可能包括HTML、CSS和...
计算机汇编杂谈-理解其中的原理
### 嵌入式开发杂谈—薛立功经典之作:关键知识点解析 #### 一、引言 在嵌入式开发领域,《嵌入式开发杂谈》是薛立功先生的经典著作之一,该作品旨在解答新手在入门阶段遇到的各种问题。通过作者的经验分享,帮助...
「安全管理」Linux_HIDS杂谈 - WEB应用防火墙 安全管理 安全资讯 安全开发 零信任 身份管理
这篇"Android开发杂谈"涵盖了从系统组成、启动过程到关键组件的解析,旨在为初学者提供一个全面的理解框架。 Android系统是由多个层次构成的,包括Application、Framework、Native Libraries、Userspace Drivers...
android 设计文档
之后他又设计了更加复杂的分析机(Analytical Engine),这款机器被认为是世界上第一台真正的“通用计算机”,尽管直到Babbage去世时它都没有真正被制造出来。该机的设计理念与现代计算机极为相似,包括数据和程序的...
本文将基于“Android开发杂谈”的主题,结合提供的资源——一个名为"Android_.pdf"的文件,来深入探讨一些重要的知识点。 1. **源码阅读**: 在Android开发中,理解源码是提升技能的关键。Android开源项目(AOSP)...
### 多核多线程杂谈-并行计算 #### 1. 并行计算概述 随着计算机硬件的发展,单核处理器的性能提升遇到了物理瓶颈,因此多核处理器成为了提高计算能力的关键技术之一。并行计算是利用多核处理器或多台计算机协同...
在编程时,遇到问题是很常见的,关键在于如何有效地解决问题。一种常用的方法是“分而治之”,即将复杂问题分解为更小、更易于管理的部分。这样可以让你更清晰地理解问题,并逐步找到解决方案。此外,学会利用调试...
同时,项目经理还要能够进行二次谈判,当项目实施过程中出现预料之外的问题时,能够及时与各方沟通,寻求解决问题的最佳方案。 赵磊与领导和团队的互动非常值得借鉴。与领导的沟通是确保项目方向和目标一致的关键,...
在选择学习FPGA还是DSP时,主要取决于个人的兴趣和职业目标。FPGA更适合那些喜欢硬件设计、追求硬件灵活性和性能优化的工程师,而DSP则更适合那些专注于软件开发、算法设计和信号处理的开发者。 在实际应用中,FPGA...
JDK中的JRE是为了开发过程中的运行测试,而`jdk/jre/bin`目录下的`client`和`server`两个子目录分别包含两种不同优化级别的JVM,适用于不同的性能需求。 了解这些基本概念和原理,对于Java程序员来说,不仅能加深对...
4. **Android开发过程的经验杂谈** - **内容概述**:分享作者或开发者在进行Android应用开发时遇到的问题及解决方法。 - **价值**:为其他开发者提供实用的技术建议和经验分享。 5. **Android开发热门帖子推荐** ...