|
|
package com.macaroon.piztor;
import java.io.Closeable;
import java.util.Calendar;
import java.util.Timer;
import java.util.TimerTask;
import java.util.zip.Inflater;
import android.annotation.SuppressLint;
import android.app.AlertDialog;
import android.app.TimePickerDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.location.LocationManager;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.os.Handler;
import android.os.Message;
import android.provider.Settings;
import android.util.Log;
import android.view.Gravity;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.TimePicker;
import android.widget.Toast;
import com.baidu.location.BDLocation;
import com.baidu.location.BDLocationListener;
import com.baidu.location.LocationClient;
import com.baidu.location.LocationClientOption;
import com.baidu.mapapi.map.LocationData;
import com.baidu.mapapi.map.MKMapTouchListener;
import com.baidu.mapapi.map.MapView;
import com.baidu.mapapi.map.OverlayItem;
import com.baidu.mapapi.map.PopupOverlay;
import com.baidu.platform.comapi.basestruct.GeoPoint;
public class AlertMaker {
private Calendar calendar;
private Context context;
private GeoPoint markerPoint;
private MapMaker mapMaker;
private long timestamp;
int mHour;
int mMinute;
int mid;
public AlertMaker(Context cc, MapMaker mm) {
context =cc;
mapMaker = mm;
}
public static void closeBoard(Context cc) {
InputMethodManager imm = (InputMethodManager) cc
.getSystemService(Context.INPUT_METHOD_SERVICE);
if (imm.isActive())
imm.toggleSoftInput(InputMethodManager.SHOW_IMPLICIT,
InputMethodManager.HIDE_NOT_ALWAYS);
}
public void showSettingsAlert() {
closeBoard(context);
AlertDialog.Builder gpsDialog = new AlertDialog.Builder(context);
gpsDialog.setTitle("GPS设置");
gpsDialog.setMessage("请开启GPS定位");
gpsDialog.setPositiveButton("设置",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
context.startActivity(intent);
}
});
gpsDialog.show();
}
public void showLateAlert() {
closeBoard(context);
AlertDialog.Builder lateDialog = new AlertDialog.Builder(context);
lateDialog.setTitle("阿哦");
lateDialog.setMessage("你迟到了!");
lateDialog.setNeutralButton("知道了", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
arg0.cancel();
}
});
lateDialog.show();
closeBoard(context);
}
public long toTimestamp(int hour, int minute) {
calendar = Calendar.getInstance();
calendar.set(calendar.get(Calendar.YEAR),
calendar.get(Calendar.MONTH),
calendar.get(Calendar.DAY_OF_MONTH),
hour,minute);
return calendar.getTimeInMillis()/1000;
}
public void showScores() {
closeBoard(context);
AlertDialog.Builder scoreDialog = new AlertDialog.Builder(context);
scoreDialog.setTitle("得分");
scoreDialog.setMessage("我方vs对方 - " + mapMaker.app.mapInfo.myScore + " vs " + mapMaker.app.mapInfo.otherScore);
scoreDialog.setNeutralButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
arg0.cancel();
}
});
scoreDialog.show();
closeBoard(context);
}
public void showCheckinAlter() {
closeBoard(context);
final AlertDialog.Builder checkinDialog = new AlertDialog.Builder(context);
LayoutInflater infaler = LayoutInflater.from(context);
final LinearLayout layout = (LinearLayout)infaler.inflate(R.layout.checkindialog, null);
checkinDialog.setView(layout);
final ProgressBar pbar = (ProgressBar)layout.findViewById(R.id.checkin_progress);
final TextView checkinInfo = (TextView)layout.findViewById(R.id.checkin_info);
checkinDialog.show();
closeBoard(context);
new CountDownTimer(5000, 1000) {
public void onTick(long millisUntilFinished) {
int ttt = (int)millisUntilFinished;
pbar.setProgress(ttt);
}
public void onFinish() {
pbar.setVisibility(View.GONE);;
mapMaker.app.mapInfo.sendCheckin(mid);
checkinInfo.setText("签到已提交");
}
}.start();
closeBoard(context);
}
public void showStartAlter() {
closeBoard(context);
AlertDialog.Builder startDialog = new AlertDialog.Builder(context);
startDialog.setTitle("开始游戏");
startDialog.setMessage("是否开始游戏?");
startDialog.setPositiveButton("确定",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
mapMaker.app.gameStarted = true;
}
});
startDialog.setNegativeButton("取消",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
startDialog.show();
}
}
|