本文主要是介绍如何让NME开发的应用在Android上不全屏,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
默认情况下NME开发的Android应用是全屏的,也就是顶部的状态栏(电量、信号、通知等)亦被隐藏,对于游戏类一般用这种模式比较多,但是对于一些应用类,还是不应该把状态栏遮挡起来。
遗憾的是,就我目前所知,此需求无法通过简单的修改nme项目的默认配置完成,而是需要修改nme的Android项目模板。
具体在<Haxe安装目录>\lib\nme\3,5,3\templates\default\android\template\src\org\haxe\nme\GameActivity.java
把下面这行注释掉即可:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
直接修改Haxe目录中的模板也会同时影响所有其它有Android目标的Haxe nme项目,那么,优雅的办法就是,使用nmml的模板覆盖机制,使用自己版本的模板,这样任意修改模板也不会影响全局模板。
具体做法是:
* 在自己的项目中建立javasrc目录,把修改了的模板文件连同其目录放到javasrc目录下。这里另建了一个单独的javasrc目录而不是把java模板文件和Haxe源文件一起放到src目录下是因为:第一,这样比较清晰;第二,放到一起的话,IDEA在构建时会试图构建java代码,导致IDE中构建失败;
* 修改nmml项目文件,添加一行模板映射如下:
<template path="javasrc/org/haxe/nme/GameActivity.java" rename="src/org/haxe/nme/GameActivity.java" if="android" />
这篇关于如何让NME开发的应用在Android上不全屏的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!