Skip to content

Instantly share code, notes, and snippets.

View mykltronn's full-sized avatar

Michael Ashton mykltronn

  • Developer
  • Durham, NC
View GitHub Profile
@mykltronn
mykltronn / ImmersiveMode.java
Last active June 12, 2019 20:02
Complete version of ImmersiveMode.java
package com.<appName>;
import android.os.Handler;
import android.view.View;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactMethod;
public class ImmersiveMode extends ReactContextBaseJavaModule {
// previous imports
. . .
+ import android.os.Handler;
public class ImmersiveMode extends ReactContextBaseJavaModule {
// let's declare a handler for our UI thread;
+ Handler uiHandler;
import React from 'react';
import {
View,
TouchableOpacity,
Text,
NativeModules
} from "react-native";
const Test = props => {
. . .
// other imports
+ import android.view.View;
+ import com.facebook.react.bridge.ReactMethod;
public class ImmersiveMode extends ReactContextBaseJavaModule {
. . .
public class ImmersiveMode extends ReactContextBaseJavaModule {
. . .
// Previously added stuff
// our method takes one argument, systemUIFlags.
// It ends up being an integer, which is pretty neat-- more on that later.
private void setSystemUIFlags(int visibility) {
// here we get ourCurrentActivity
// from it, we grab the window
. . .
// lots of imports
public class MainApplication extends Application implements ReactApplication {
. . .
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
package com.<appName>;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
public class ImmersiveMode extends ReactContextBaseJavaModule {
+ @Override
+ public String getName() {
+ return "ImmersiveMode";
package com.myApp;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactMethod;
import com.facebook.react.bridge.Callback;
import android.view.View;
@mykltronn
mykltronn / ImmersiveModePackage.java
Last active June 11, 2019 17:50
Some React Native Android module boilerplate
package com.<appName>;
import com.facebook.react.ReactPackage;
import com.facebook.react.bridge.NativeModule;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.uimanager.ViewManager;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@mykltronn
mykltronn / MainActivity.java
Last active June 11, 2019 02:58
Globally disable Android software navigation bar in React Native
package com.myApp;
. . .
// imports
. . .
public class MainActivity extends ReactActivity {
@Override
protected String getMainComponentName() {
return "MyApp";