Tag: onconfigurationchanged

为什么我的方向改变不被注意?

基于此处接受的答案,我将此代码添加到Activity中,因为我希望这是更改已分配的活动布局的第一步: @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); // Checks the orientation of the screen if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { Toast.makeText(this, “landscape”, Toast.LENGTH_SHORT).show(); setContentView(R.layout.activity_settings_landscape); } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){ Toast.makeText(this, “portrait”, Toast.LENGTH_SHORT).show(); setContentView(R.layout.activity_settings); } } …并修改了AndroidManifest.xml中的Activity元素。 例如,改变它: ……变成这个: (我添加了“configChanges”爵士乐)。 但是,虽然mashing keypad.9确实在模拟器中翻转方向,但没有提出吐司(onConfigurationChanged()的“if”行上的断点没有被击中)。 我做错了什么或省略了什么? 注意:当我从AndroidManifest中的“configChanges”行中删除“| keyboardHidden”时没有任何区别(这只是一种预感 – 我想知道它是否意味着“不注意通过键盘进行的方向更改”)。 UPDATE 我尝试了araut的建议,还有Jared Burrows的建议,但是没有一个适合我。 感冒这只是一个模拟器问题? 我还没有设备来测试它,所以我不能凭经验回答这个问题。 更新2 根据我在这里读到的内容,我想可能会添加一些OrientationEventListener爵士乐来解决这个难题,但不是! 这是我添加的代码(在上下文中显示;什么是OrientationEventListener的新东西): […]