Java Android粘性沉浸式模式

Java Android粘性沉浸式模式,java,android,fullscreen,Java,Android,Fullscreen,所以我有一个活动,我希望它全屏,显示标题栏和系统按钮(后退,最小化…)。 我确实从developers.android.com上获取了一段代码,它确实会全屏显示,但当我按下屏幕时,标题会弹回来,按钮也会弹出来,我希望只有当我的手指在屏幕的上下滑动时,它才会弹出 我的活动看起来像: package com.example.nsomething.main; import android.annotation.TargetApi; import android.app.Activity; impor

所以我有一个活动,我希望它全屏,显示标题栏和系统按钮(后退,最小化…)。 我确实从developers.android.com上获取了一段代码,它确实会全屏显示,但当我按下屏幕时,标题会弹回来,按钮也会弹出来,我希望只有当我的手指在屏幕的上下滑动时,它才会弹出

我的活动看起来像:

package com.example.nsomething.main;

import android.annotation.TargetApi;
import android.app.Activity;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

import com.example.nsomething.R;

public class Report extends Activity {

    @TargetApi(Build.VERSION_CODES.KITKAT)
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().getDecorView().setSystemUiVisibility(
                View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                        | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                        | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                        | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                        | View.SYSTEM_UI_FLAG_FULLSCREEN
                        | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
        setContentView(R.layout.report);

        initialize();
    }

    private void initialize() {
        Button report = (Button) findViewById(R.id.button1);
        report.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                startActivity(new Intent(Report.this, Harta.class));
                finish();
            }
        });
    }

}
与中的代码一样,您最好将代码放入WindowFocusChanged中

@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);

    if (hasFocus) {
        decorView.setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
            | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
            | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_FULLSCREEN
            | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
    }
}
与中的代码一样,您最好将代码放入WindowFocusChanged中

@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);

    if (hasFocus) {
        decorView.setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
            | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
            | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_FULLSCREEN
            | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
    }
}