实验5 数独游戏界面设计

实验报告

课程名称

Android开发与实践

实验日期

    2016.4.15

实验项目名称

数独游戏界面设计

实验地点

S3002

实验类型

□验证型    √设计型    □综合型

学  时

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

【目的】

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

【要求】

掌握ActionBar的使用

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

(1)PC机

(2)操作系统:Windows XP

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

三、实验内容及步骤

【原理】

1) 使用ActionBar显示OptionMenu的菜单项MenuItem

2) 使用程序图标导航

3) 添加Action View

【过程】

1) 导入工程Sodoku

2) 添加以下的Activity类

3) 添加以下layout资源文件

 

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

初始界面:

新游戏界面:(注:此界面只是背景,可以自由更换,下同)

帮助界面:

关于界面:

 

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

代码:

main.xml:

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

    <item

        android:id="@+id/item1"

        android:showAsAction="always"

        android:title="帮助">

    </item>

    <item

        android:id="@+id/item2"

        android:showAsAction="always"

        android:title="关于">

    </item>

    <item

        android:id="@+id/item3"

        android:showAsAction="always"

        android:title="新游戏">

    </item>

    <item

        android:id="@+id/item4"

        android:actionLayout="@layout/clock"

        android:showAsAction="always"

        android:title="时钟">

    </item>

</menu>

MainActivity.java:

package com.example.sukodu;

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.util.Log;

import android.view.Menu;

import android.view.MenuInflater;

import android.view.MenuItem;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.TextView;

public class MainActivity extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// TODO Auto-generated method stub

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

switch (item.getItemId()) {

case android.R.id.home:

//创建启动MainActivity的Intent

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

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

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

startActivity(intent);

break;

          case R.id.item1:

Intent intent1=new Intent(this,help.class);

startActivity(intent1);

break;

          case R.id.item2:

   Intent intent2=new Intent(this,about.class);

   startActivity(intent2);

   break;

          case R.id.item3:

     Intent intent3=new Intent(this,newgame.class);

     startActivity(intent3);

     break;

default:

break;

}

return super.onOptionsItemSelected(item);

}

}

运行结果:(截图)

1.

 

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

   通过实验掌握了Actionbar的使用,使用Actionbar显示OptionMenu的菜单项MenuItem,在实验中遇到问题通过询问老师、同学解决了一些小错误

实验评语

 

实验成绩

 

指导教师签名:              年   月   日

原文地址:https://www.cnblogs.com/badgood/p/5395042.html