Galaxy nexus中的Android屏幕方向传感器肖像

时间:2013-07-26 06:43:30

标签: android screen-orientation galaxy

我正在开发一款Android应用程序,我需要为平板电脑设置双面横向和手机双侧纵向模式。

我已经在很多手机和平板电脑上进行了测试,一切正常,除了我的Galaxy nexus手机(版本4.2.2)。有些双侧肖像似乎只适用于这款手机。

我正在使用以下代码来实现它,

public class MainActivity extends Activity 
  {
@Override
protected void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    if ((this.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_NORMAL)
    {   

        //phone
        this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

        //dual side portrait mode
        if(Build.VERSION.SDK_INT > 8)
        {
            this.setRequestedOrientation(7);

        }


    }
    else if ((this.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE)
    {
        //tablet
        this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

        //dual side landscape mode
        if(Build.VERSION.SDK_INT > 8)
        {
            this.setRequestedOrientation(6);
        }
    }


    else if ((this.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_XLARGE)
    {
        //tablet
        this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

        //dual side landscape mode
        if(Build.VERSION.SDK_INT > 8)
        {
            this.setRequestedOrientation(6);

        }
    }


}

请帮忙!谢谢!

0 个答案:

没有答案