DaliDemoNativeActivity.java
3.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
package com.sec.dalidemo;
import android.annotation.TargetApi;
import android.app.NativeActivity;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;
public class DaliDemoNativeActivity extends NativeActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Hide toolbar
int SDK_INT = android.os.Build.VERSION.SDK_INT;
if(SDK_INT >= 19)
{
setImmersiveSticky();
View decorView = getWindow().getDecorView();
decorView.setOnSystemUiVisibilityChangeListener
(new View.OnSystemUiVisibilityChangeListener() {
@Override
public void onSystemUiVisibilityChange(int visibility) {
setImmersiveSticky();
}
});
}
}
@TargetApi(19)
void setImmersiveSticky() {
View decorView = getWindow().getDecorView();
decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
}
@TargetApi(19)
protected void onResume() {
super.onResume();
//Hide toolbar
int SDK_INT = android.os.Build.VERSION.SDK_INT;
if (SDK_INT >= 11 && SDK_INT < 14)
{
getWindow().getDecorView().setSystemUiVisibility(View.STATUS_BAR_HIDDEN);
}
else if (SDK_INT >= 14 && SDK_INT < 19)
{
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_LOW_PROFILE);
}
else if (SDK_INT >= 19)
{
setImmersiveSticky();
}
}
protected void onPause() {
super.onPause();
}
public final void setSoftInputMode(boolean visible) {
if (visible) {
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
}
else {
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
}
}
public final String getMetaData(String key) {
try {
ActivityInfo ai = getApplicationContext().getPackageManager()
.getActivityInfo(getComponentName(), PackageManager.GET_META_DATA);
Bundle bundle = ai.metaData;
if (bundle != null)
return bundle.getString(key);
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
return null;
}
public final String getIntentStringExtra(String key) {
return getIntent().getStringExtra(key);
}
public final void launchExample(String exampleName) {
Intent intent = new Intent(this, DaliDemoNativeActivity.class);
intent.putExtra("start", exampleName);
startActivity(intent);
}
}