android的全屏设置的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android的全屏设置的问题相关的知识,希望对你有一定的参考价值。

android的activity是不全屏的,我想在setcontentview()方法之后再设置全屏,有没有什么办法,比如我再setcontentview(View view),但是好像都不能把状态栏给去掉。

在实际的应用程序开发中,有时需要把 Activity 设置成全屏显示,一般情况下,可以通过两种方式来设置全屏显示效果。其一,通过在代码中可以设置,其二,通过manifest配置文件来设置全屏。
其一:在代码中设置(如下)
[c-sharp] view plaincopy
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);

//设置无标题
requestWindowFeature(Window.FEATURE_NO_TITLE);
//设置全屏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);

setContentView(R.layout.main);

但要注意的是:在代码中设置的话,设置无标题和设置全屏的两段代码要放置在 setContentView(R.layout.main); 这段代码的前面。要不然会报错。

其二:在manifest配置文件中设置
[c-sharp] view plaincopy
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.andyidea"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".login.LoginActivity"
android:theme="@android:style/android.NoTitleBar.Fullscreen"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
在相应的Activity中节点中添加属性:android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 即可以设置某个Activity全屏显示。若设置成 android:theme="@android:style/Theme.NoTitleBar" 即是只是设置成无标题状态。
参考技术A 无视楼上吧
我直接从别处找来的两种办法
1、在AndroidManifest.xml的配置文件里面的<activity
里面加入:
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"//去掉状态栏及标题栏
2、在setContentView(R.layout.**)前面加入:
this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);//去掉信息栏
参考技术B 不可能在setvontentview后再设置全屏的,因为setcontenview要在上层的framwork层先确定,你上层定死之后,就无法再修改了。只能在xml里配置,或者在setcontentview之前代码配置。追问

那有没有可能我在oncreate()方法的setcontentview()方法加载一个不是全屏的view,之后一个事件之后,再用setcontentview()加载一个全屏的view呢。

追答

你的全屏是要去掉标题栏的,而标题栏是在绘制actvity的时候就定死的。

本回答被提问者采纳
参考技术C 你好! 安卓系统主界面 是不可以全屏的 上面有状态栏 而状态栏 是手机自带的 无法隐藏 还望理解
望采纳 祝愉快!
参考技术D 设置全屏必须在setcontentview(View view),之前调用。

Phonegap 构建的适用于 Android 应用程序的全屏键盘

【中文标题】Phonegap 构建的适用于 Android 应用程序的全屏键盘【英文标题】:Fullscreen Keyboard for Android app by Phonegap build 【发布时间】:2014-06-24 11:40:45 【问题描述】:

问题:- 我正在开发一个有 2 个字段的 android 应用程序。当专注于字段时,虚拟键盘将隐藏/重叠在这些字段上。所以我从here 找到了解决方案&lt;preference name="fullscreen" value="false" /&gt;。但这会导致状态栏显示,UI 将向上推。因此,我又回来了。

问题:- 是否有任何 jQuery 补丁或 phonegap 插件可以使虚拟键盘全屏 [横向和纵向模式 ],如下图所示:

请尽快回复!提前致谢。 问候,

【问题讨论】:

【参考方案1】:

好的,我终于用下面的 jQuery Patch 解决了这个问题:

//JS : OnReady event:

 var windowHeightSeventyPercent = parseInt(screen.height * 0.7); //To support multiple devices

 $("input").focusin(function()
    $("body").height($("body").height()+parseInt(windowHeightSeventyPercent)); //Make page body scroll by adding height to make user to fillup field.
 );

 $("input").focusout(function()
    $("body").height($("body").height()-parseInt(windowHeightSeventyPercent));
 );

【讨论】:

以上是关于android的全屏设置的问题的主要内容,如果未能解决你的问题,请参考以下文章

Android Ireader的全屏与非全屏的切换效果实现

如何在 Android 中创建始终处于顶部的全屏覆盖活动

Android中的全屏DialogFragment

Android开发 - 设置DialogFragment全屏显示

android 6中的android webview youtube视频中的全屏模式问题

android中的全屏意图到底是啥?