- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这个想法是在闹钟开始时启动游戏。我在下面显示了 Manifest.xml。如果我犯了错误,请纠正我。由于我是Android新手,所以我无法弄清楚。 PS:我搜索了其他类似的问题并纠正了许多其他错误,但问题仍然存在。
这是我从教程(AndroidTimeActivity)中获得的警报代码:
public class AndroidTimeActivity extends Activity {
TimePicker myTimePicker;
Button buttonstartSetDialog;
TextView textAlarmPrompt;
TimePickerDialog timePickerDialog;
final static int RQS_1 = 1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textAlarmPrompt = (TextView)findViewById(R.id.alarmprompt);
buttonstartSetDialog = (Button)findViewById(R.id.startSetDialog);
buttonstartSetDialog.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
textAlarmPrompt.setText("");
openTimePickerDialog(false);
}});
}
private void openTimePickerDialog(boolean is24r){
Calendar calendar = Calendar.getInstance();
timePickerDialog = new TimePickerDialog(
AndroidTimeActivity.this,
onTimeSetListener,
calendar.get(Calendar.HOUR_OF_DAY),
calendar.get(Calendar.MINUTE),
is24r);
timePickerDialog.setTitle("Set Alarm Time");
timePickerDialog.show();
}
OnTimeSetListener onTimeSetListener= new OnTimeSetListener(){
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
Calendar calNow = Calendar.getInstance();
Calendar calSet = (Calendar) calNow.clone();
calSet.set(Calendar.HOUR_OF_DAY, hourOfDay);
calSet.set(Calendar.MINUTE, minute);
calSet.set(Calendar.SECOND, 0);
calSet.set(Calendar.MILLISECOND, 0);
if(calSet.compareTo(calNow) <= 0){
//Today Set time passed, count to tomorrow
calSet.add(Calendar.DATE, 1);
}
setAlarm(calSet);
}};
private void setAlarm(Calendar targetCal){
textAlarmPrompt.setText(
"\n\n***\n"
+ "Alarm is set@ " + targetCal.getTime() + "\n"
+ "***\n");
Intent intent = new Intent(getBaseContext(), AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getBaseContext(),RQS_1,
intent, 0);
AlarmManager alarmManager = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, targetCal.getTimeInMillis(),
pendingIntent);
}
}
这是 AlarmReceiver 类:
public class AlarmReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent arg1) {
Intent activityIntent = new Intent(context, Manager.class);
activityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(activityIntent);
}
}
这是当警报接收器收到 Intent 时我想要调用的 Manager 类:
public class Manager extends Activity {
private static int ROW_COUNT = -1;
private static int COL_COUNT = -1;
private Context context;
private Drawable backImage;
private int [] [] cards;
private List<Drawable> images;
private Card firstCard;
private Card seconedCard;
private ButtonListener buttonListener;
private static Object lock = new Object();
int turns;
private TableLayout mainTable;
private UpdateCardsHandler handler;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
handler = new UpdateCardsHandler();
loadImages();
setContentView(R.layout.main);
backImage = getResources().getDrawable(R.drawable.icon);
/*
((Button)findViewById(R.id.ButtonNew)).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
newGame();
}
});*/
buttonListener = new ButtonListener();
mainTable = (TableLayout)findViewById(R.id.TableLayout03);
context = mainTable.getContext();
Spinner s = (Spinner) findViewById(R.id.Spinner01);
ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.type,
android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
s.setAdapter(adapter);
s.setOnItemSelectedListener(new OnItemSelectedListener(){
public void onItemSelected(
android.widget.AdapterView<?> arg0,
View arg1, int pos, long arg3){
((Spinner) findViewById(R.id.Spinner01)).setSelection(0);
int x,y;
switch (pos) {
case 1:
x=4;y=4;
break;
case 2:
x=4;y=5;
break;
case 3:
x=4;y=6;
break;
case 4:
x=5;y=6;
break;
case 5:
x=6;y=6;
break;
default:
return;
}
newGame(x,y);
}
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
}
private void newGame(int c, int r) {
ROW_COUNT = r;
COL_COUNT = c;
cards = new int [COL_COUNT] [ROW_COUNT];
mainTable.removeView(findViewById(R.id.TableRow01));
mainTable.removeView(findViewById(R.id.TableRow02));
TableRow tr = ((TableRow)findViewById(R.id.TableRow03));
tr.removeAllViews();
mainTable = new TableLayout(context);
tr.addView(mainTable);
for (int y = 0; y < ROW_COUNT; y++) {
mainTable.addView(createRow(y));
}
firstCard=null;
loadCards();
turns=0;
((TextView)findViewById(R.id.tv1)).setText("Tries: "+turns);
}
private void loadImages() {
images = new ArrayList<Drawable>();
images.add(getResources().getDrawable(R.drawable.card1));
images.add(getResources().getDrawable(R.drawable.card2));
images.add(getResources().getDrawable(R.drawable.card3));
images.add(getResources().getDrawable(R.drawable.card4));
images.add(getResources().getDrawable(R.drawable.card5));
images.add(getResources().getDrawable(R.drawable.card6));
images.add(getResources().getDrawable(R.drawable.card7));
images.add(getResources().getDrawable(R.drawable.card8));
images.add(getResources().getDrawable(R.drawable.card9));
images.add(getResources().getDrawable(R.drawable.card10));
images.add(getResources().getDrawable(R.drawable.card11));
images.add(getResources().getDrawable(R.drawable.card12));
images.add(getResources().getDrawable(R.drawable.card13));
images.add(getResources().getDrawable(R.drawable.card14));
images.add(getResources().getDrawable(R.drawable.card15));
images.add(getResources().getDrawable(R.drawable.card16));
images.add(getResources().getDrawable(R.drawable.card17));
images.add(getResources().getDrawable(R.drawable.card18));
images.add(getResources().getDrawable(R.drawable.card19));
images.add(getResources().getDrawable(R.drawable.card20));
images.add(getResources().getDrawable(R.drawable.card21));
}
private void loadCards(){
try{
int size = ROW_COUNT*COL_COUNT;
Log.i("loadCards()","size=" + size);
ArrayList<Integer> list = new ArrayList<Integer>();
for(int i=0;i<size;i++){
list.add(new Integer(i));
}
Random r = new Random();
for(int i=size-1;i>=0;i--){
int t=0;
if(i>0){
t = r.nextInt(i);
}
t=list.remove(t).intValue();
cards[i%COL_COUNT][i/COL_COUNT]=t%(size/2);
Log.i("loadCards()", "card["+(i%COL_COUNT)+"]["+(i/COL_COUNT)+"]="+
cards[i%COL_COUNT][i/COL_COUNT]);
}
}
catch (Exception e) {
Log.e("loadCards()", e+"");
}
}
private TableRow createRow(int y){
TableRow row = new TableRow(context);
row.setHorizontalGravity(Gravity.CENTER);
for (int x = 0; x < COL_COUNT; x++) {
row.addView(createImageButton(x,y));
}
return row;
}
private View createImageButton(int x, int y){
Button button = new Button(context);
button.setBackgroundDrawable(backImage);
button.setId(100*x+y);
button.setOnClickListener(buttonListener);
return button;
}
class ButtonListener implements OnClickListener {
public void onClick(View v) {
synchronized (lock) {
if(firstCard!=null && seconedCard != null){
return;
}
int id = v.getId();
int x = id/100;
int y = id%100;
turnCard((Button)v,x,y);
}
}
private void turnCard(Button button,int x, int y) {
button.setBackgroundDrawable(images.get(cards[x][y]));
if(firstCard==null){
firstCard = new Card(button,x,y);
}
else{
if(firstCard.x == x && firstCard.y == y){
return; //the user pressed the same card
}
seconedCard = new Card(button,x,y);
turns++;
((TextView)findViewById(R.id.tv1)).setText("Tries: "+turns);
TimerTask tt = new TimerTask() {
@Override
public void run() {
try{
synchronized (lock) {
handler.sendEmptyMessage(0);
}
}
catch (Exception e) {
Log.e("E1", e.getMessage());
}
}
};
Timer t = new Timer(false);
t.schedule(tt, 1300);
}
}
}
class UpdateCardsHandler extends Handler{
@Override
public void handleMessage(Message msg) {
synchronized (lock) {
checkCards();
}
}
public void checkCards(){
if(cards[seconedCard.x][seconedCard.y] == cards[firstCard.x][firstCard.y]){
firstCard.button.setVisibility(View.INVISIBLE);
seconedCard.button.setVisibility(View.INVISIBLE);
}
else {
seconedCard.button.setBackgroundDrawable(backImage);
firstCard.button.setBackgroundDrawable(backImage);
}
firstCard=null;
seconedCard=null;
}
}
}
这是我的 list ,我确实为 Manager 类创建了一个 Activity ,但是“AndroidTime 已停止”错误仍然存在。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.exercise.AndroidTime"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="10" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name="com.exercise.AndroidTime.AndroidTimeActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name=".AlarmReceiver" android:process=":remote" />
<activity android:name="com.exercise.AndroidTime.Manager"></activity>
</application>
</manifest>
感谢您的帮助。
最佳答案
public class AlarmReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent arg1) {
Intent activityIntent = new Intent(context,
Manager.class);
activityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(activityIntent);
}
}
关于java - "Unfortunately ' 应用程序 ' has stopped"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12171731/
我是一个初学者,我需要一些建议。当我尝试在 Android 模拟器中运行以下 Android 应用程序时,当我尝试运行它时,它显示“不幸的是,再次已关闭”。 我不确定为什么它不起作用。 有人可以给我建
我正在尝试在 Android Studio 中制作一个应用程序,它要求您将文件下载到用户设备上的 sdcard/Download/文件夹中。问题是,当我输入要下载的 URL 并单击“下载”时,应用程序
自上次更新我的 Android Studio 和我的 SDK 包以来,每当我启动模拟器时都会收到此错误。请检查下面的屏幕截图。 我的 logcat 将这些报告为错误语句: 06-11 05:18:22
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
这个问题在这里已经有了答案: Unfortunately MyApp has stopped. How can I solve this? (22 个回答) 3年前关闭。 我用我在 github 上找
在我的应用程序中单击图像按钮时,我总是收到消息:“不幸的是,myapp已停止”。问题是什么??? 这是我的代码。单击图像按钮将调用showImageDialog方法: public class Rem
我是个新人,正在从新的波士顿学习编码。 MainActivity.java: package com.tipsoftech.fastfart; import android.app.Activity;
我是 Android 应用程序和 Java 的新手,一直在制作一个简单的应用程序,一切都很顺利,直到我打开模拟器并出现以下错误“不幸的是,您的应用程序已停止”。这是我的主要 Activity.java
我是 Android 应用程序开发新手,我尝试编写我的第一个简单应用程序来尝试在 Activity 之间发送数据。代码已编译,我尝试在虚拟设备上启动它,但正如标题所示,它停止了。 这是 logcat
这是我的第一个应用程序。我所需要的只是五个按钮,其中两个用于调用某些电话号码(到目前为止只创建了一个),三个按钮用于将用户带到某个 URL。我没有收到任何错误或警告,也没有任何有关如何导航 LogCa
运行应用程序时收到以下错误: 02-09 18:01:19.582: D/AndroidRuntime(1306): Shutting down VM 02-09 18:01:19.582: W/da
我是 Android 编程新手。我正在遵循 youtube 上的 Android 教程指南。这是我们的论文。 这是主 Activity package com.example.abrico.viola
我正在尝试为 android 编写一个基本的绘图 Android 应用程序并在 Genymotion 上测试它,但我无法单击应用程序图标(它显示“不幸的是 [app] 已停止。”) 我不确定这三个私有
你好,我在运行应用程序时遇到问题,当它运行不正常时,它会打开,但是当我按下按钮时,告诉我应用程序已停止并且无法运行:“不幸的是,应用程序已停止”。这是我的简单代码,我希望我能尽快得到答案......谢
我的应用程序只工作一次,在第二次运行时(和其他...)我得到“不幸的是,我的应用程序已停止”。我已经尝试了很多,但对我没有任何影响。这是代码: 主要 Activity : 包 com.example.
你好,我是新编程,这是我的第一个应用程序,我试图重新创建一个我找到教程的应用程序。是一个小费计算器,应用程序打开没有问题,但当我尝试使用它时,它停止工作并关闭。 XML代码是 package com.
当我使用模拟器运行我的 Android 应用程序时,它运行良好,在我的手机上也是如此,但在另一部手机上,尝试运行该应用程序时,我总是得到“不幸的是 [...] 已停止”错误。我如何找出这个错误的原因(
我想将位图实现到surfaceview,并尝试在单击时通过按钮编辑图像。但有一个问题。当我在模拟器上运行它时,一切都是正确的,直到按下按钮。 “不幸的是,......停止......”出现在屏幕上,程
我的应用程序运行正常! 当运行android应用程序编译无误,但在显示时返回消息。 Unfortunately, application has stopped 当我安装并链接这两个包时发生了 rea
这是一个食物食谱应用程序,我只是在学习,所以如果你能帮我纠正我的错误并解释,我将非常感激。提前致谢 主要 Activity package rice.recipe; import android.ap
我是一名优秀的程序员,十分优秀!