实验5 数独游戏界面设计

一、实验目的及要求(本实验所涉及并要求掌握的知识点)

实现数独游戏的完整界面设计

掌握ActionBar的使用;

二、实验环境(本实验所使用的硬件设备和相关软件)

(1)PC机

(2)操作系统:Windows XP

(3)软件: Eclipse, JDK1.6,Android SDK,ADT

1) 导入工程Sodoku

2) 添加以下的Activity类

3) 添加以下layout资源文件

4) 完成设计后,界面运行如下

初始界面:

新游戏界面:

帮助界面:

关于界面:

四、实验结果(本实验源程序清单及运行结果或实验结论、实验设计图)

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Calibri","sans-serif";}

menu菜单代码

<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/ai1"
        android:title="皮肤">
        <menu>
            <item
                android:id="@+id/ai1_1"
                android:title="默认(晚霞)"/>
            <item
                android:id="@+id/ai1_2"
                android:title="蓝天"/>
            <item
                android:id="@+id/ai1_3"
                android:title="雨天"/>
            <item
                android:id="@+id/ai1_4"
                android:title="卡通"/>
            <item
                android:id="@+id/ai1_5"
                android:title="星空"/>
        </menu>
    </item>
    <item
        android:id="@+id/ai2"
        android:title="@string/action_settings">
    </item>
    <item
        android:id="@+id/aix"
        android:showAsAction="always"
        android:title="新游戏">
    </item>
    <item
        android:id="@+id/ai3"
        android:showAsAction="always"
        android:title="帮助">
    </item>
    <item
        android:id="@+id/ai4"
        android:showAsAction="always"
        android:title="关于">
    </item>
    <item
        android:id="@+id/ai5"
        android:actionLayout="@layout/clock"
        android:showAsAction="always"
        android:title="时钟">
    </item>
</menu>

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Calibri","sans-serif";}

MainActivity关键代码:

actionBar=getActionBar();
        actionBar.show();

public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        MenuInflater inflater = new MenuInflater(this);
        inflater.inflate(R.menu.main, menu);
        return super.onCreateOptionsMenu(menu);
    }

     public boolean onOptionsItemSelected(MenuItem item) {
        // TODO Auto-generated method stub
        Resources resources;
        Drawable btnDrawable;
        item.setChecked(true);
        switch (item.getItemId()) {
        case R.id.ai1_1:
            item.setChecked(true);
            resources = getBaseContext().getResources();
            btnDrawable = resources.getDrawable(R.drawable.ppp);
            V.setBackground(btnDrawable);
            break;
        case R.id.ai1_2:
            item.setChecked(true);
            resources = getBaseContext().getResources();
            btnDrawable = resources.getDrawable(R.drawable.p2);
            V.setBackground(btnDrawable);
            break;
        case R.id.ai1_3:
            item.setChecked(true);
            resources = getBaseContext().getResources();
            btnDrawable = resources.getDrawable(R.drawable.p4);
            V.setBackground(btnDrawable);
            break;
        case R.id.ai1_4:
            item.setChecked(true);
            resources = getBaseContext().getResources();
            btnDrawable = resources.getDrawable(R.drawable.p3);
            V.setBackground(btnDrawable);
            break;
        case R.id.ai1_5:
            item.setChecked(true);
            resources = getBaseContext().getResources();
            btnDrawable = resources.getDrawable(R.drawable.p5);
            V.setBackground(btnDrawable);
            break;
        case R.id.ai2:
            item.setChecked(true);
            Intent intent=new Intent();
            intent.setClass(MainActivity.this, music_main.class);
            startActivity(intent);
            break;
        case R.id.ai3:
            item.setChecked(true);
            Intent intent1=new Intent();
            intent1.setClass(MainActivity.this, help_main.class);
            startActivity(intent1);
            break;
        case R.id.ai4:
            item.setChecked(true);
            Intent intent2=new Intent();
            intent2.setClass(MainActivity.this, about_main.class);
            startActivity(intent2);
        case R.id.aix:
            item.setChecked(true);
            Intent intentx=new Intent();
            intentx.setClass(MainActivity.this, newgame_main.class);
            startActivity(intentx);

        default:
            break;
        }
        return super.onOptionsItemSelected(item);
    }

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Calibri","sans-serif";}

关于、帮助、新游戏关键代码:

ActionBar actionBar;
actionBar=getActionBar();
        actionBar.show();
        actionBar.setDisplayShowHomeEnabled(true);//显示应用程序图标
        actionBar.setDisplayHomeAsUpEnabled(true);

public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        MenuInflater inflater = new MenuInflater(this);
        inflater.inflate(R.menu.main, menu);
        return super.onCreateOptionsMenu(menu);
    }
     public boolean onOptionsItemSelected(MenuItem item) {
        // TODO Auto-generated method stub
        item.setChecked(true);
        switch (item.getItemId()) {
        case R.id.ai3:
            item.setChecked(true);
            Intent intent1=new Intent();
            intent1.setClass(this, help_main.class);
            startActivity(intent1);
            finish();
            break;
        case R.id.ai4:
            item.setChecked(true);
            Intent intent2=new Intent();
            intent2.setClass(this, about_main.class);
            startActivity(intent2);
            finish();
            break;
        case android.R.id.home:
            item.setChecked(true);
            Intent intenth=new Intent(this,MainActivity.class);
            //添加额外的Flag,将Activity栈中处于MainActivity之上的Activity弹出
            intenth.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            Bundle bundle=new Bundle();
            bundle.putString("username","");
            intenth.putExtras(bundle);
            startActivity(intenth);
            finish();
            break;
        case R.id.aix:
            item.setChecked(true);
            Intent intentx=new Intent();
            intentx.setClass(this, newgame_main.class);
            startActivity(intentx);
            finish();
        default:
            break;
        }
        return super.onOptionsItemSelected(item);
    }

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Calibri","sans-serif";}

运行结果:(截图)

如三已展示

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Calibri","sans-serif";}

五、实验总结(对本实验结果进行分析,实验心得体会及改进意见)

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Calibri","sans-serif";}

经过实验,熟悉了游戏导航栏设置的基本代码,为游戏增添了方便的操作,是项目更加完整,对于ActionBar的使用,可以应用用于很app,是一个实用的方法。日后还需要提高ActionBar使用的技巧。

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

MicrosoftInternetExplorer4

menu菜单代码

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

<item

android:id="@+id/ai1"

android:title="皮肤">

<menu>

<item

android:id="@+id/ai1_1"

android:title="默认(晚霞)"/>

<item

android:id="@+id/ai1_2"

android:title="蓝天"/>

<item

android:id="@+id/ai1_3"

android:title="雨天"/>

<item

android:id="@+id/ai1_4"

android:title="卡通"/>

<item

android:id="@+id/ai1_5"

android:title="星空"/>

</menu>

</item>

<item

android:id="@+id/ai2"

android:title="@string/action_settings">

</item>

<item

android:id="@+id/aix"

android:showAsAction="always"

android:title="新游戏">

</item>

<item

android:id="@+id/ai3"

android:showAsAction="always"

android:title="帮助">

</item>

<item

android:id="@+id/ai4"

android:showAsAction="always"

android:title="关于">

</item>

<item

android:id="@+id/ai5"

android:actionLayout="@layout/clock"

android:showAsAction="always"

android:title="时钟">

</item>

</menu>

MainActivity关键代码:

actionBar=getActionBar();

actionBar.show();

publicboolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

MenuInflater inflater = new MenuInflater(this);

inflater.inflate(R.menu.main, menu);

returnsuper.onCreateOptionsMenu(menu);

}

publicboolean onOptionsItemSelected(MenuItem item) {

// TODO Auto-generated method stub

Resources resources;

Drawable btnDrawable;

item.setChecked(true);

switch (item.getItemId()) {

case R.id.ai1_1:

item.setChecked(true);

resources = getBaseContext().getResources();

btnDrawable = resources.getDrawable(R.drawable.ppp);

V.setBackground(btnDrawable);

break;

case R.id.ai1_2:

item.setChecked(true);

resources = getBaseContext().getResources();

btnDrawable = resources.getDrawable(R.drawable.p2);

V.setBackground(btnDrawable);

break;

case R.id.ai1_3:

item.setChecked(true);

resources = getBaseContext().getResources();

btnDrawable = resources.getDrawable(R.drawable.p4);

V.setBackground(btnDrawable);

break;

case R.id.ai1_4:

item.setChecked(true);

resources = getBaseContext().getResources();

btnDrawable = resources.getDrawable(R.drawable.p3);

V.setBackground(btnDrawable);

break;

case R.id.ai1_5:

item.setChecked(true);

resources = getBaseContext().getResources();

btnDrawable = resources.getDrawable(R.drawable.p5);

V.setBackground(btnDrawable);

break;

case R.id.ai2:

item.setChecked(true);

Intent intent=new Intent();

intent.setClass(MainActivity.this, music_main.class);

startActivity(intent);

break;

case R.id.ai3:

item.setChecked(true);

Intent intent1=new Intent();

intent1.setClass(MainActivity.this, help_main.class);

startActivity(intent1);

break;

case R.id.ai4:

item.setChecked(true);

Intent intent2=new Intent();

intent2.setClass(MainActivity.this, about_main.class);

startActivity(intent2);

case R.id.aix:

item.setChecked(true);

Intent intentx=new Intent();

intentx.setClass(MainActivity.this, newgame_main.class);

startActivity(intentx);

default:

break;

}

returnsuper.onOptionsItemSelected(item);

}

关于、帮助、新游戏关键代码:

ActionBar actionBar;

actionBar=getActionBar();

actionBar.show();

actionBar.setDisplayShowHomeEnabled(true);//显示应用程序图标

actionBar.setDisplayHomeAsUpEnabled(true);

publicboolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

MenuInflater inflater = new MenuInflater(this);

inflater.inflate(R.menu.main, menu);

returnsuper.onCreateOptionsMenu(menu);

}

publicboolean onOptionsItemSelected(MenuItem item) {

// TODO Auto-generated method stub

item.setChecked(true);

switch (item.getItemId()) {

case R.id.ai3:

item.setChecked(true);

Intent intent1=new Intent();

intent1.setClass(this, help_main.class);

startActivity(intent1);

finish();

break;

case R.id.ai4:

item.setChecked(true);

Intent intent2=new Intent();

intent2.setClass(this, about_main.class);

startActivity(intent2);

finish();

break;

case android.R.id.home:

item.setChecked(true);

Intent intenth=new Intent(this,MainActivity.class);

//添加额外的Flag,将Activity栈中处于MainActivity之上的Activity弹出

intenth.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

Bundle bundle=new Bundle();

bundle.putString("username","");

intenth.putExtras(bundle);

startActivity(intenth);

finish();

break;

case R.id.aix:

item.setChecked(true);

Intent intentx=new Intent();

intentx.setClass(this, newgame_main.class);

startActivity(intentx);

finish();

default:

break;

}

returnsuper.onOptionsItemSelected(item);

}

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Calibri","sans-serif";}

时间: 2024-10-10 16:50:43

实验5 数独游戏界面设计的相关文章

实验5数独游戏界面设计

实验报告 课程名称 基于Android平台移动互联网开发 实验日期 2016.4.8 实验项目名称 数独游戏界面设计 实验地点 S30002 实验类型 □验证型    √设计型    □综合型 学  时 2 一.实验目的及要求(本实验所涉及并要求掌握的知识点) 目的:实现数独游戏的完整界面设计 要求:掌握ActionBar的使用 二.实验环境(本实验所使用的硬件设备和相关软件) (1)PC机 (2)操作系统:Windows XP (3)软件: Eclipse, JDK1.6,Android SD

# 2017-2018-1 20155318 《信息安全系统设计基础》 实验五 通讯协议设计

2017-2018-1 20155318 <信息安全系统设计基础> 实验五 通讯协议设计 Linux下OpenSSL的安装与测试 任务要求:在Ubuntu中完成 http://www.cnblogs.com/rocedu/p/5087623.html 中的作业 OpenSSL简介 OpenSSL是一个SSL协议的开源实现,采用C语言作为开发语言,具备了跨平台的能力,支持Unix/Linux.Windows.Mac OS等多种平台. OpenSSL整个软件包大概可以分成三个主要的功能部分: 密码

2017-2018-1 20155223 实验五 通讯协议设计

2017-2018-1 20155223 实验五 通讯协议设计 什么是OpenSSL? OpenSSL 是一个安全套接字层密码库,囊括主要的密码算法.常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用. SSL是Secure Sockets Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输.Netscape公司在推出第一个Web浏览器的同时,提出了SSL协议标准.其目标是保证两个应用间通信的保密性和可靠性,可在服务器端和用户端同时实现支持

2017-2018-1 20155317《信息安全系统设计基础》 实验五 通讯协议设计

2017-2018-1 20155317<信息安全系统设计基础> 实验五 通讯协议设计 实验要求 任务 安装OpenSSL环境,并编写测试代码验证无误研究OpenSSL算法,测试对称算法中的AES,非对称算法中的RSA,Hash算法中的MD5在Ubuntu中实现对实验二中的"wc服务器"通过混合密码系统进行防护 1.安装OpenSSL环境,并编写测试代码验证无误 实验步骤: $ ./config $ make $ make test $ make install 进行测试,

2017-2018-1 20155235 实验五 通讯协议设计 实验内容

2017-2018-1 20155235 实验五 通讯协议设计 实验内容 一.安装OpenSSL 二.通过混合密码系统进行防护 实验步骤 一.安装OpenSSL 在Ubuntu中完成 http://www.cnblogs.com/rocedu/p/5087623.html 中的作业 提交运行结果截图 在运行中出现了一些问题,会在下面的测试中遇到的问题详解 二.通过混合密码系统进行防护 在Ubuntu中实现对实验二中的"wc服务器"通过混合密码系统进行防护 提交测试截图) 实验流程 在虚

2017-2018-1 201553334 实验五 通讯协议设计

2017-2018-1 201553334 实验五 通讯协议设计 1.在Ubuntu中完成 http://www.cnblogs.com/rocedu/p/5087623.html 中的作业 提交运行结果截图 运行结果截图: 2.在Ubuntu中实现对实验二中的"wc服务器"通过混合密码系统进行防护 提交测试截图 源代码上传至码云 运行结果截图: 代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长 目标 5000行 30篇 400小时 第一周 75/75 1

2017-2018-1 20155333 《信息安全系统设计基础》实验五通讯协议设计

2017-2018-1 20155333 <信息安全系统设计基础>实验五通讯协议设计 实验五 通讯协议设计-1 要求 在Ubuntu中完成 http://www.cnblogs.com/rocedu/p/5087623.html 中的作业 提交运行结果截图 OpenSSL简介 OpenSSL是一个SSL协议的开源实现,采用C语言作为开发语言,具备了跨平台的能力,支持Unix/Linux.Windows.Mac OS等多种平台. OpenSSL最早的版本在1995年发布,1998年后开始由Ope

2017-2018-1 20155232 实验五 通讯协议设计

2017-2018-1 20155232 实验五 通讯协议设计 Linux下OpenSSL的安装与使用 OpenSSL简介 OpenSSL是一个SSL协议的开源实现,采用C语言作为开发语言,具备了跨平台的能力,支持Unix/Linux.Windows.Mac OS等多种平台. OpenSSL最早的版本在1995年发布,1998年后开始由OpenSSL项目组维护和开发.当前最新的版本是1.1.0 alpha版本,完全实现了对SSLv1.SSLv2.SSLv3和TLS的支持..目前,OpenSSL已

2017-2018-1 20155218 实验五 通讯协议设计

2017-2018-1 20155218 实验五 通讯协议设计 实验内容 实验一: 题目要求: 两人一组 1.基于Socket实现TCP通信,一人实现服务器,一人实现客户端 2.研究OpenSSL算法,测试对称算法中的AES,非对称算法中的RSA,Hash算法中的MD5 3.选用合适的算法,基于混合密码系统实现对TCP通信进行机密性.完整性保护. 4.学有余力者,对系统进行安全性分析和改进. 实验结果: 实验二: 题目要求: 在Ubuntu中实现对实验二中的"wc服务器"通过混合密码系