我的主要活动是
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new MyGame(this));
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
其中整个内容都在Mygame类中,并且我希望整个应用程序在点击MyGame类中的按钮时重新启动,我该怎么办,我遇到了this并尝试过但没有任何工作< / p>
OnClickListener retryClicklistener = new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
// Intent i = getContext().getPackageManager()
// .getLaunchIntentForPackage(getContext().getPackageName() );
//
// i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK );
// // startActivity( MyGameLongClick);
// Intent startActivity = new Intent();
// startActivity.setClass(this,OTHER_ACTIVITY.class);
// startActivity(startActivity);
}};
答案 0 :(得分:3)
可能recreate()
可以帮助你..
答案 1 :(得分:2)
如果这是主要活动,您可以使用以下方法重新启动应用程序:
private void restartSelf() {
AlarmManager am = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP, Calendar.getInstance().getTimeInMillis() + 1000, // one second
PendingIntent.getActivity(this, 0, getIntent(), PendingIntent.FLAG_ONE_SHOT
| PendingIntent.FLAG_CANCEL_CURRENT));
finish();
}
从restartSelf()
致电onClick()
:
@Override
public void onClick(View v) {
restartSelf();
}
这将在按一下按钮后重新启动您的应用。 希望这会有所帮助。
答案 2 :(得分:0)