我想知道是否有办法确定设备具有哪种物理键盘(“纵向”,例如 Droid Pro 或“横向”,例如 HTC Mytouch Slide)?
我想在激活物理键盘时自动切换 Activity 方向,以便 Activity 中的 EditText 与键盘平行。
我尝试了来自 here 的旋转/方向解决方案,但在我的带有横向滑动键盘的测试手机上,我必须颠倒横向和纵向才能使其正常工作,这让我认为在某些设备上它必须相反。
比较屏幕宽度和高度,就像那里建议的其他一些答案一样,似乎也很可疑。或者还有其他方法吗?
最佳答案
看起来不需要知道键盘类型:为了设置 Activity 的正确方向,将其设置为来自 onConfigurationChanged 处理程序的传感器方向似乎就足够了(当物理键盘打开或关闭):
@Override
public void onConfigurationChanged(final Configuration newConfig)
{
super.onConfigurationChanged(newConfig);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
}
关于android - 物理键盘方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14444921/