2014-02-18 48 views
1

我设计了一个媒体播放器,它只是使用表面视图渲染屏幕和MediaController来控制视频状态。它支持横向/纵向模式。我用Nexus-4检查了它,它工作的很好,但在HTC 1和银河系统上工作不一样。视频屏幕方向不变

forum建议使用G-Sensor设置进行检查。任何想法/建议如何克服这个问题?

+0

邮政编码供参考。 –

+0

这是简单的与媒体控制器表面视图...没有更多的。 – CoDe

+0

好的,所以你不是从你的应用程序(编程)或其他设备设置中确定方位。 –

回答

0

您正在覆盖android:configChanges= "keyboardHidden|orientation|screenSize",这意味着您或您的应用程序需要处理方向更改。在这种情况下,onConfigurationChanged方法将在方向更改时始终调用。

所以在这个方法里面,你可以做任何你想做的事情与你的视频视图。

@Override 
public void onConfigurationChanged(Configuration newConfig) { 
    super.onConfigurationChanged(newConfig); 

    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { 
     // landscape 
    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) { 
     // portrait 
    } 
} 
+0

好的可能是......但是相同的一组代码正在为其他设备工作......为什么如此?......任何想法? – CoDe

+1

我认为与不同的android版本行为正在改变。通过此链接http://developer.android.com/guide/topics/resources/runtime-changes.html –

+0

有用的链接...让我检查它..感谢:) – CoDe