我的 android 应用程序有两个意图。
第一个:主窗口,
第二个包含游戏视图(SurfaceView)。
当用户按下“返回”按钮时,主窗口会在游戏视图缩进暂停(surfaceDestroyed)之前出现。
但是我需要在主窗口出现之前在游戏视图中运行一个方法。我一直坚持这个问题。
这里代码:
主窗口类:
@Override
public void onClick(final View v) {
if (v.getId() == R.id.StartBtn) {
final Intent myIntent = new Intent(getApplicationContext(),
StartActivity.class);
this.startActivity(myIntent);
}
}
开始活动类
public class StartActivity extends Activity {
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_start);
}
@Override
protected void onPause() {
super.onPause();
}
@Override
protected void onSaveInstanceState(final Bundle outState) {
super.onSaveInstanceState(outState);
}
游戏视图类
public class GameView extends SurfaceView implements SurfaceHolder.Callback {
@Override
public void surfaceDestroyed(final SurfaceHolder arg0) {
//Do some operations before destroing
}
}
布局activity_start
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".StartActivity" >
<com.somepackage.appname.GameView
android:id="@+id/game_view"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</RelativeLayout>
所以我需要在 onResume on MainWindow 意图之前在 GameView 中启动 surfaceDestroyed