相关疑难解决方法(0)

AppCompat的全屏主题

我想知道如何将全屏主题(没有标题栏+没有操作栏)应用于某个活动.我正在使用支持包v7中的AppCompat库.

我试图申请android:theme="@android:style/Theme.NoTitleBar.Fullscreen"我的具体活动,但它崩溃了.我认为这是因为我的应用程序主题是这样的.

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
Run Code Online (Sandbox Code Playgroud)

我也尝试过这个

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN);
Run Code Online (Sandbox Code Playgroud)

它只隐藏标题栏但不隐藏操作栏.我目前的解决方法是隐藏动作栏

getSupportActionBar().hide();
Run Code Online (Sandbox Code Playgroud)

android android-theme android-actionbar

294
推荐指数
8
解决办法
20万
查看次数

Android透明状态栏和操作栏

我已经对这个主题做了一些研究,我找不到一个完整的解决方案,所以,一步一步,经过一些反复试验,我终于找到了如何实现这些结果:透明或有色ActionbarStatusbar.请看下面的答案.

android android-appcompat android-actionbar android-toolbar android-statusbar

93
推荐指数
1
解决办法
11万
查看次数

Android R 隐藏状态栏 -&gt; 向下移动视图并出现一个黑色矩形

Android R + Pixel 4 Emulator:当我隐藏状态栏时,主视图向下移动,顶部出现一个黑色方块(与状态栏大小相同)。它在 Android 11 之前运行。它看起来很简单,但我找不到解决方案......而且我需要全屏模式。

我尝试使用 SYSTEM_UI_FLAG_FULLSCREEN(现已弃用)和 controller.hide(WindowInsets.Type.statusBars()); 这两种方式有同样的问题。

在此处输入图片说明

这是主要代码: MainActivity.java

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    Button buttonShow = findViewById(R.id.b1);
    buttonShow.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
           showBars();
        }
    });

    Button buttonHide = findViewById(R.id.b2);
    buttonHide.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
          hideBars();
        }
    });

    showBars();
}

public void showBars(){

    View decorView = getWindow().getDecorView();
    int uiOptions =  View.SYSTEM_UI_FLAG_LAYOUT_STABLE
    | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN;

    decorView.setSystemUiVisibility(uiOptions);

    getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

    // New code …
Run Code Online (Sandbox Code Playgroud)

android fullscreen statusbar android-11

8
推荐指数
1
解决办法
724
查看次数