有人可以向我解释一下标志在 setFlags 这样的函数中的作用吗?在那种情况下这个词到底意味着什么......?
我的例子是
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(new RenderView(this));
}
我想知道setFlags有什么用?
我已经阅读了API文档,但我还没有理解。
只需将标志视为要应用于对象(在本例中为对象
Window
)的功能,并且它们表示为整数。您可以使用 Window
和 WindowManager.LayoutParams
中的最终变量来应用标志。
setFlags
替换当前标志。
addFlags
附加更多标志,但不会替换当前标志。
基本上 setFlag() 用于根据我们的应用程序要求,有很多可用的标志,例如
Window flag, Intent flag etc..
此标志用于某些情况,例如我们希望以编程方式实现某些功能
for Intent Flag
mintent.setFlag(Intent.FLAG_ACTIVITY_CLEAR_TOP);
这意味着在应用程序执行打开之前所有其他活动都将被清除。
根据您的代码窗口标志
它将通过编程方式将您的应用程序屏幕设置为全屏
应用程序屏幕显示活动有一些与之关联的视图。有不同的方式来呈现您的内容,即标题栏、无标题栏、全屏、自动屏幕锁定、无自动屏幕锁定...等,要将此属性设置为您的活动,您可以通过设置此窗口标志告诉屏幕,现在,在调用 setContentView 之前需要设置一些标志,因此在您的代码中,您试图使窗口全屏显示,并显式调用 setContentView 使标志有效。 要了解更多如何使用窗口来显示不同情况下的内容,请参阅:http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html
标志是为操作系统设置的指示器,因此它知道您喜欢如何处理意图,例如,Flag 指示此 PendingIntent 可以使用仅一次。用于与 getActivity、getBroadcast 和 getService 一起使用。 如果设置,则在调用 send() 后,它将自动为您取消,并且将来通过它发送的任何尝试都将失败。