我想通过隐藏顶部栏来使WebView全屏显示。
经过研究,这应该有效:
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
但添加此功能会在启动时崩溃我的应用。我做错了什么,你是如何做到的?
答案 0 :(得分:2)
尝试,
getSupportActionBar().hide();
onCreate() 中的
答案 1 :(得分:2)
请按以下步骤操作
打开您的java文件。
你会发现onCreate方法(下面写的是@override) 看起来像这样
public class MainActivity extends AppCompactActivity { //#1
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); //#3
setContentView(R.layout.activity_main);
在行和上面的setContentview //#3下添加此行
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
AppCompactActivity
将其更改为 Activity
。它将显示错误,因为未导入活动类。因此,请在活动之间移动活动类,然后按 alt + enter 导入类。或者手动导入它只需在 import android.app.Activity;
要确认,您的新代码将如下所示
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
}
}
答案 2 :(得分:1)
您需要在清单文件
中应用以下样式喜欢:
<activity android:name=".YourActivity"
android:theme="@style/Theme.AppCompat.Light.NoActionBar.FullScreen"/>
在 style.xml 中,添加以下样式
<style name="Theme.AppCompat.Light.NoActionBar.FullScreen" parent="@style/Theme.AppCompat.Light">
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
答案 3 :(得分:1)
不需要做太多的马戏。只需将其复制并粘贴到 MainActivity.java 中的 COPY MARKED CODE 下方
public class MainActivity extends AppCompatActivity {
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// START -- copy from here
requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
getSupportActionBar().hide();
// END -- copy till here
setContentView(R.layout.activity_main);
webView = findViewById(R.id.webview);
//webView.setWebViewClient(new webViewClient());
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("https://app.noorcool.com/");
}
}
就是这样。享受编码
答案 4 :(得分:0)
将此AndroidManifest.xml
文件添加:
<activity android:name=".YourActivityName"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"/>
答案 5 :(得分:0)
我相信你的活动扩展了CompatActivity,因此它应该有一个compat主题。 如果我没错,只需更改您的活动以扩展活动。
答案 6 :(得分:0)
for hiding top bar..in Manifest..add this try
<application
android:theme="@style/Theme.AppCompat.Light.NoActionBar
for webview full screen
in XML
<WebView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/webView"/>
and in Mainactivity...do like this
public class MainActivity extends Activity{
答案 7 :(得分:0)
这对我来说是一个非常简单的解决方案。
搜索任何有某种 ActionBar 的地方,
对我来说,我在 res/values/themes.xml 和 res/values-night/themes.xml 中有它。
在那里,将您拥有的任何 DarkActionBar 或 LightActionbar 更改为 NoActionBar。
例如之前:
<style name="Theme.AppName" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
之后:
<style name="Theme.AppName" parent="Theme.MaterialComponents.DayNight.NoActionBar">
就是这样!非常适合我。
来源:https://www.codegrepper.com/code-examples/whatever/android+studio+webview+remove+title+bar