有什么办法知道windows phone手机是用的实体键还是虚拟按键
最近在写启动屏幕,发现虚拟按钮会挡住,启动屏幕的最下面的元素,大概有50 px。有什么办法知道手机是用的实体键还是虚拟按键吗??UWP里面有什么api知道这个值。。求大神指点。。。
为防止不可控的内容风险,本站已关闭新用户注册,新贴的发表及评论;
你现在看到的内容只是互联网用户曾经发表的言论快照,仅用于老用户留存纪念,且仅与科技行业相关,全部内容不代表本站观点及立场;
本站重新开放前已针对包括用户隐私、版权保护、信息安全、国家政策在内的各种互联网法律法规要求,执行了隐患内容的自查、屏蔽和删除;
本站目前所属个人主体,未有任何盈利安排与计划,且与原WFUN.COM所属公司不存在任何关联关系;
如果本帖内容或者相关资源侵犯到您的合法权益,或者您认为存在问题,那么请您务必点此举报或投诉!
Quoteplayer2135 发表于 2016-11-15 09:26
反正我是直接加高了几十个px,说实话,这种东西微软就应该自己处理好,不用开发者去判断 ...
加高了。。可是。。实体按键的时候不就不是在最低下了吗。。( ╯□╰ )
啟動時 使用全螢幕 進入主畫面時再退出 ApplicationView.GetForCurrentView().TryEnterFullScreenMode()
Quotehandsomejks 发表于 2016-11-15 10:00
啟動時 使用全螢幕 進入主畫面時再退出 ApplicationView.GetForCurrentView().TryEnterFullScreenMode() ...
{:6_243:} 然后虚拟按键会不见?? 然后进应用了再显示?
Quotehandsomejks 发表于 2016-11-15 10:00
啟動時 使用全螢幕 進入主畫面時再退出 ApplicationView.GetForCurrentView().TryEnterFullScreenMode() ...
有点奇怪。。但是可以隐藏掉。。虚拟按键。。{:6_216:}
本帖最后由 法的空间 于 2016-11-15 10:59 编辑
结帖:
// Gets the visible region of the window (app view). The visible region is the region
not occluded by chrome such as the status bar and app bar.
var visibleBounds = ApplicationView.GetForCurrentView().VisibleBounds;
double statusbarHeight = 0;
if (ApiInformation.IsTypePresent(“Windows.UI.ViewManagement.StatusBar“))
{
statusbarHeight= StatusBar.GetForCurrentView().OccludedRect.Height;
}
visibleBounds 是不包含上面的状态bar和虚拟按钮的高度的。。
所以虚拟按键的高度等于 SplashScreen的高度 - VisibleBounds.Height-statusbarHeight
1520实体按键和950XL虚拟键已经测试过
{:4_163:}
感谢机油们提过的思路。。
Quote法的空间 发表于 2016-11-15 10:49
结帖:
// Gets the visible region of the window (app view). The visible region is the region
學習了!{:6_233:}
Quote法的空间 发表于 2016-11-15 10:49
结帖:
// Gets the visible region of the window (app view). The visible region is the region
感谢分享,虽然还没学到那,但用处大大的!收藏了!
Quote法的空间 发表于 2016-11-15 10:49
结帖:
// Gets the visible region of the window (app view). The visible region is the region
贡献个VB版本的代码示例 ' Gets the visible region of the window (app view). The visible region is the region not occluded by chrome such as the status bar and app bar. Dim visibleBounds = ApplicationView.GetForCurrentView().VisibleBounds Dim statusbarHeight = 0.0 If ApiInformation.IsTypePresent(Windows.UI.ViewManagement.StatusBar) Then statusbarHeight = StatusBar.GetForCurrentView().OccludedRect.Height End If
说实话,虚拟键盘是手机当中最反人类的一项,既难看,又难用,而且虚拟键盘下面一般还跟着老大一个下巴,可笑的是,这种智障的设计还成为潮流,谷歌用也就算了,其他手机厂商和微软还跟风一样的使用。
Quote***链接停止解析***
说实话,虚拟键盘是手机当中最反人类的一项,既难看,又难用,而且虚拟键盘下面一般还跟着老大一个下巴,可 ...
这东西其实就一点好处,允许你操作系统自己定义虚拟按键,也许还能帮硬件厂商省点实体按键的事?
至于那个大下巴,现在这种想尽办法把手机拍扁的时代,怎么都会有的,没办法。