[android]代码库
package cn.edu.xtu.tilepuzzle;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.Paint.FontMetrics;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.LinearLayout;
import android.widget.TextView;
public class MainActivity extends Activity{
static final int lowColor = 0x000000FF;
static final int highColor = 0x00FF0000;
static final int highBGColor = 0x00CCCCCC;
boolean cheated;
int gameState;// 游戏状态
/**
* 屏幕显示的当前视图
* */
private ClassSetScreenWH classSetScreenWH;
private ClassPaint classPaint;
static float strHeight;
static int menuIdx;
/** 窗口的宽度*/
private int screenWidth = 0;
/** 窗口的高度*/
private int screenHeight = 0;
private ClassBoardModel classBoardModel;
//public BoardUI boardUI;
private ClassSQLite classSQLite;
private TextView startGameTextView;
private TextView setBackgroundTextView;
private TextView bestTextView;
private TextView gameSetTextView;
private TextView gameHelpTextView;
private TextView []textViews;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
System.out.println("MainActivity===>>onCreate");
classSetScreenWH=new ClassSetScreenWH(MainActivity.this);
this.screenHeight=classSetScreenWH.getScreenHeight();
this.screenWidth=classSetScreenWH.getScreenWidth();
//testStroe();
classSQLite=new ClassSQLite(this);
DBCheck();
//classSQLite.SqliteTest();
initData();
//displayWelcome();
setContentView(R.layout.main_menu);
initTextView();
}
private void initTextView(){
LinearLayout mainMenuLinearLayout0=(LinearLayout)MainActivity.this.findViewById(R.id.main_menu_layout0);
mainMenuLinearLayout0.setBackgroundColor(Color.argb(180,255, 255, 190));
//mainMenuLinearLayout0.setBackgroundColor(Color.BLACK);
//LinearLayout mainMenuLinearLayout=(LinearLayout)MainActivity.this.findViewById(R.id.main_menu_layout);
//mainMenuLinearLayout.setBackgroundColor(Color.argb(200,255, 255, 190));
//TextView parentTextView=(TextView)MainActivity.this.findViewById(R.main_menu_id.parentTextView);
//parentTextView.setBackgroundColor(Color.argb(200,255, 255, 190));
startGameTextView=(TextView)MainActivity.this.findViewById(R.main_menu_id.startGame);
startGameTextView.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
System.out.println("开始游戏");
setTextViewColor(startGameTextView);
handleCOMMAND_ID(ClassGameDB.COMMAND_ID_NEW_GAME);
}
});
setBackgroundTextView=(TextView)MainActivity.this.findViewById(R.main_menu_id.setBackground);
setBackgroundTextView.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
System.out.println("设置游戏背景");
setTextViewColor(setBackgroundTextView);
handleCOMMAND_ID(ClassGameDB.COMMAND_ID_SHOW_PHOTO);
}
});
bestTextView=(TextView)MainActivity.this.findViewById(R.main_menu_id.best);
bestTextView.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
System.out.println("最佳成绩");
setTextViewColor(bestTextView);
handleCOMMAND_ID(ClassGameDB.COMMAND_ID_BEST);
}
});
gameSetTextView=(TextView)MainActivity.this.findViewById(R.main_menu_id.gameSet);
gameSetTextView.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
System.out.println("游戏设置");
setTextViewColor(gameSetTextView);
//gameSetTextView.setHighlightColor(Color.argb(50,255, 255, 190));
handleCOMMAND_ID(ClassGameDB.COMMAND_ID_OPTIONS);
}
});
gameHelpTextView=(TextView)MainActivity.this.findViewById(R.main_menu_id.gameHelp);
gameHelpTextView.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
System.out.println("游戏帮助");
setTextViewColor(gameHelpTextView);
handleCOMMAND_ID(ClassGameDB.COMMAND_ID_HELP);
}
});
textViews=new TextView[5];
textViews[0]=startGameTextView;
textViews[1]=setBackgroundTextView;
textViews[2]=bestTextView;
textViews[3]=gameSetTextView;
textViews[4]=gameHelpTextView;
setTextViewColor(startGameTextView);
}
private void setTextViewColor(TextView notThisTextView){
for(int i=0;i<textViews.length;i++){
//textViews[i].setHighlightColor(color)
textViews[i].setHeight(80);
if(textViews[i]!=notThisTextView){
System.out.println("现在改变颜色");
//textViews[i].setBackgroundColor(0xB4FFFFBE);//Color.argb(180,255, 255, 190));//#B4FFFFBE
textViews[i].setBackgroundColor(Color.argb(180,255, 255, 190));//#4B4FFFFBE
textViews[i].setTextColor(Color.argb(230,230, 0, 0));//#E6E60000
}else{
notThisTextView.setBackgroundColor(Color.argb(255,255, 255, 190));//#FFFFFFBE
notThisTextView.setTextColor(Color.argb(255,230, 0, 0));//#FFE60000
}
}
}
private void DBCheck(){
boolean isExits=false,isCreate=false,hasAdd=false;
//classSQLite.deleteDBByName(GameDB.DATABASE_TILEPUZZLE_NAME);
classSQLite.createDBByName(ClassGameDB.DATABASE_TILEPUZZLE_NAME);
isExits=classSQLite.isExistTableByName(ClassGameDB.TABLE_TILEPUZZLE_GAMEDATA);
if(isExits)
Log.d("DB","游戏参数表存在!");
else {
System.out.println("游戏参数表不存在!");
isCreate=classSQLite.createTableByName(ClassGameDB.TABLE_TILEPUZZLE_GAMEDATA);
if(isCreate)
Log.d("DB","游戏参数表创建成功!");
else {
Log.d("DB","游戏参数表创建失败!");
}
hasAdd=classSQLite.addGameData(ClassGameDB.gameSetData);
if(hasAdd)
Log.d("DB","参数插入成功!");
else {
Log.d("DB","参数插入失败!");
}
}
//classSQLite.deleteTableByName(GameDB.TABLE_TILEPUZZLE_PEOPLEINFO);
isExits=classSQLite.isExistTableByName(ClassGameDB.TABLE_TILEPUZZLE_PEOPLEINFO);
if(isExits){
Log.d("DB","玩家信息表存在!");
try {
//classSQLite.deleteTableByName(GameDB.TABLE_TILEPUZZLE_PEOPLEINFO);
Log.d("DB","玩家信息表成功!");
} catch (Exception e) {
Log.d("DB","玩家信息表失败!");
}
//classSQLite.createTableByName(GameDB.TABLE_TILEPUZZLE_PEOPLEINFO);
}
else {
Log.d("DB","玩家信息表不存在!");
isCreate=classSQLite.createTableByName(ClassGameDB.TABLE_TILEPUZZLE_PEOPLEINFO);
if(isCreate){
Log.d("DB","玩家信息表创建成功!");
classSQLite.addUserInfo("TEST",3600);
}
else {
Log.d("DB","玩家信息表创建失败!");
}
}
}
public void initData() {
System.out.println("MainUIController:初始化画笔 -> ClassPaint");
this.classPaint = new ClassPaint();
this.classPaint.initPaint();
FontMetrics fontMetrics = classPaint.paintBigRed.getFontMetrics();
// 计算文字高度
strHeight = fontMetrics.bottom - fontMetrics.top;
System.out.println("文字高:" + strHeight);
menuIdx = 0;
System.out.println("MainUIController:获取并初始化模型 -> BoardModel");
this.classBoardModel = (ClassBoardModel) getApplication();
this.classBoardModel.setScreenWidth(this.screenWidth);
this.classBoardModel.setScreenHeight(this.screenHeight);
this.classBoardModel.setClassSQLite(this.classSQLite);
System.out.println("MainUIController:初始化菜单 -> MainMenuUI");
}
public void displayWelcome() {
System.out.println("MainUIController:进入菜单界面->mainMenuUI");
setContentView(R.layout.main_menu);
}
/**
* 传入游戏菜单索引参数,然后进行相应处理
* */
public void handleCOMMAND_ID(int eventID) {
switch (eventID) {
case ClassGameDB.COMMAND_ID_NEW_GAME: {
cheated = false;
Intent intent =new Intent();
intent.setClass(MainActivity.this, GamePlayActivity.class);
MainActivity.this.startActivity(intent);
break;
}
case ClassGameDB.COMMAND_ID_BEST: {
Intent intent =new Intent();
intent.setClass(MainActivity.this, ShowUserInfoActivity.class);
MainActivity.this.startActivity(intent);
break;
}
case ClassGameDB.COMMAND_ID_OPTIONS: {
Intent intent =new Intent();
intent.setClass(MainActivity.this, GameSetActivity.class);
MainActivity.this.startActivity(intent);
break;
}
case ClassGameDB.COMMAND_ID_SHOW_PHOTO: {
Intent intent =new Intent();
intent.setClass(MainActivity.this, ChoosePhotoActivity.class);
MainActivity.this.startActivity(intent);
break;
}
case ClassGameDB.COMMAND_ID_HELP: {
Intent intent =new Intent();
intent.setClass(MainActivity.this, HelpActivity.class);
MainActivity.this.startActivity(intent);
break;
}
default:
break;
}
}
@Override
protected void onStart() {
System.out.println("MainActivity===>>onStart");
super.onStart();
}
@Override
protected void onRestart() {
System.out.println("MainActivity===>>onRestart");
super.onRestart();
}
@Override
protected void onResume() {
System.out.println("MainActivity===>>onResume");
super.onResume();
}
@Override
protected void onPause() {
System.out.println("MainActivity===>>onPause");
super.onPause();
}
@Override
protected void onStop() {
System.out.println("MainActivity===>>onStop");
super.onStop();
}
@Override
protected void onDestroy() {
System.out.println("MainActivity====>>onDestroy");
super.onDestroy();
}
public int getScreenWidth() {
return this.screenWidth;
}
public int getScreenHeight() {
return this.screenHeight;
}
}
[源代码打包下载]
初级程序员
by: 牙小夜 发表于:2014-06-05 20:48:30 顶(0) | 踩(0) 回复
截图看看运行效果
回复评论