package pap.crowslanding;
public class Game extends MainActivity implements OnClickListener {
private MazeBall ball;
protected static GameView gameV;
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.tester1);
Button settings = (Button) findViewById(R.id.settingsButton);
Button mainMenu = (Button) findViewById(R.id.backButton);
ball = (MazeBall) findViewById(R.id.mazeball);
gameV = (GameView) findViewById(R.id.game_view);
settings.setOnClickListener(this);
mainMenu.setOnClickListener(this);
//Unrequired code removed
// IF USER PRESSES ON !Main Menu!
public void onClick(View v) {
switch (v.getId()){
case R.id.settingsButton:
break;
case R.id.backButton:
onBackPressed();
break;
}
}
public void onBackPressed() {
this.finish();//try activityname.finish instead of this
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
}
我认为你可以把每个启动活动放在一个堆栈中,每次你回到你的主活动。
这里有一个类,我用它来管理我的一个应用程序中的所有活动,每次我输入一个活动,在它的onCreate方法中,我调用它的addActivity()方法将活动放入堆栈。每次快速执行一个活动时,在它的onDestory方法中,我都会调用Manager的finishActivity方法来完成Stack中最后一个输入活动。在您的例子中,我认为您可以创建一个方法来弹出并完成所有晚于MainActivity进入堆栈的活动,并在每次返回MainActivity时调用该方法。
公共类AppManager{
private static Stack<Activity> activityStack;
private static AppManager instance;
private AppManager(){
}
public static AppManager getInstance() {
if(instance == null)
instance = new AppManager();
return instance;
}
public void addActivity(Activity ac) {
if(activityStack == null)
activityStack = new Stack<Activity>();
activityStack.add(ac);
}
public Activity getCurrentActivity(){
if(activityStack == null)
return null;
return activityStack.lastElement();
}
public void finishActivity(Activity ac) {
if(activityStack != null && ac != null){
activityStack.remove(ac);
ac.finish();
ac = null;
}
}
public void finishActivity() {
if(activityStack != null) {
Activity ac = activityStack.lastElement();
finishActivity(ac);
}
}
public void finishActivity(Class<?> cls) {
if(activityStack == null)
return;
for(Activity ac: activityStack){
if(ac.getClass().equals(cls)){
finishActivity(ac);
}
}
}
public void finishAllActivity(){
if(activityStack == null)
return;
Activity ac;
for(int i = 0, size = activityStack.size(); i < size; i ++) {
ac = activityStack.get(i);
if(ac != null) {
ac.finish();
}
}
activityStack.clear();
}
public void appExit(Context context) {
try {
finishAllActivity();
System.exit(0);
} catch (Exception e) {
Log.e("AppManager", "exit error:" + e.getMessage());
}
}
首先,我已经看到了所有其他关于类似的问题和答案,但我需要的是一点不同。 我需要能够在后台关闭所有正在运行的活动(它们正在运行一个线程,当我返回MainActivity时,它们仍然在运行)
我对promise不熟悉。我查找了按顺序执行promise的示例,但没有找到与我的应用程序类似的示例。 我的问题是,我想按照一定的顺序解决promise,但也要捕获promise解决时的所有结果。通过查找例子。我已经创建了这个问题的简化版本。 我能够创建一个函数doWork(),但问题是它所做的只是按顺序解决promise,而没有捕获结果。 理想情况下,我想要一个返回promise的函数,该函数将
我正在制作一个应用程序,其中有一个“MainActivity.class”,它有一个按钮“Edit profile”,可以引导另一个活动,称为“Editprofile.class”。它(MainActivity)还有一个文本视图,显示一个字符串(名称)。 Editprofile.class接受来自用户的字符串,按下添加按钮后,新的字符串会更新到数据库中,替换以前的字符串。现在,当更新后,用户通过后
在主管内部- 以下是我主管课程的一部分: 以下是导致子参与者停止的条件: 在akka工具包中,我可以使用哪个API打印我的Supervisor类中所有子角色的状态?
所以我有一个用例,我有四个任务a,B,C,D,我想并行运行。这些任务的响应类型是布尔型的。 在并行运行它们之后,我想在以下任一条件下停止执行 从任一任务接收第一个false时返回。 4个任务全部完成,没有一个返回false。 我的项目使用的是Java,springboot 所以我试图使用可完成的未来来实现这一点。我可以在第一步成功,就像下面的代码一样。但不是第二步。有什么帮助吗?
问题内容: 在我的应用程序中,我有两个活动。首先是启动屏幕,它仅显示应用程序名称和其他一些信息。单击初始屏幕活动后,我正在加载主要活动。我的应用程序运行正常,但遇到一个小问题。如果我从主要活动中按返回按钮,则控件将启动初始屏幕活动。但我不想再次显示启动画面活动,我想避免在按“后退”按钮时启动画面。 可能吗?如果可以,怎么办? 问题答案: 在文件中,在初始屏幕中添加属性。