我有活动,在线程中录制音频(通过MediaRecorder类),在另一个线程中,我每画0,1秒刷一次画布(这张图与此有很多共同之处:http://www.anddev.org/the_pizza_timer_-_threading-drawing_on_canvas-t126.html)。当用户更改设备方向时,我希望我的应用程序仍然有效。所以我的Activity:
中的AndroidManifest文件中有android:configChanges="orientation|keyboardHidden"
在活动中我已经覆盖了这个方法(isRecording是布尔值):
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if (isRecording && newConfig.orientation == 2)
setContentView(R.layout.main_record_land);
}
当我更改设备方向时如果没有这个,如果上面和setContentView一切正常,因为我想工作。但我希望在横向模式下设置其他视图。只更改我的控件位置,但仍然有相同的控件,具有相同的ide。当我在上面的代码中使用setContentView时(在方向更改后),我的绘图画布被重置并停止。如何使我的绘图画布(线程刷新)仍然有效?