5

目前,当您将外接显示器连接到支持镜像的 Android 手机时,手机会假设外接显示器设置为横向。因此,当手机(在本例中为 Galaxy S III)纵向放置时,显示器上的视频输出是纵向的,但两侧的黑条居中。当然,当手机水平握持时,输出会填满外接显示器。

我正在寻找的是一种强制 Galaxy S III 镜像其屏幕的方法,这样当它以纵向放置时,输出将填满外部显示器。它必须在 Android 上运行 - 我不是特别在谈论特定的应用程序,它需要在所有应用程序中一致地运行。

外接显示器将垂直安装,因此 Galaxy S III 在纵向时的输出必须完全填满并在外接显示器上具有正确的方向。

谁能给我任何关于从哪里开始的建议?我已经查看了 S III 的源代码,但找不到任何线索(我没有在 Android 上编写自己的驱动程序的经验)。这将适用于美国版本(特别是 Verizon,尽管视频硬件 - Adreno 225 GPU 和 SiI9234 MHL 控制器芯片 - 在所有美国版本中都是相同的)。也许在该领域更有经验的人可以对此有所了解。

4

1 回答 1

3

不幸的是,这是不可能的。您必须在横向模式下开发您的应用程序,然后旋转所有视图/内容以使其看起来处于垂直纵向模式。一种选择是动画。IE:

旋转动画.xml:

<rotate  xmlns:android="http://schemas.android.com/apk/res/android"
       android:fromDegrees="0" 
       android:toDegrees="-90"
       android:pivotX="50%"
       android:duration="0"
       android:fillAfter="true" />

您的代码:

  TextView text = (TextView)findViewById(R.id.txtview);       
  text.setText("rotated text here");

  RotateAnimation rotate=    (RotateAnimation)AnimationUtils.loadAnimation(this,R.anim.rotateAnimation);
t.setAnimation(rotate);

你也可以看看这个帖子:

Android中的垂直(旋转)标签

于 2012-10-07T16:49:10.850 回答