public void show() { if (!sEnabled) { return; } UiThreadUtil.runOnUiThread(new Runnable() { @Override public void run() { setVisible(true); } }); }
/** * Throws an {@link AssertionException} if the current thread is the UI thread. */ public static void assertNotOnUiThread() { SoftAssertions.assertCondition(!isOnUiThread(), "Expected not to run on UI thread!"); }
public void hide() { if (!sEnabled) { return; } UiThreadUtil.runOnUiThread(new Runnable() { @Override public void run() { setVisible(false); } }); }
/** * Throws an {@link AssertionException} if the current thread is not the UI thread. */ public static void assertOnUiThread() { SoftAssertions.assertCondition(isOnUiThread(), "Expected to run on UI thread!"); }
public void showMessage(final String message, final int color, final int backgroundColor) { if (!sEnabled) { return; } UiThreadUtil.runOnUiThread(new Runnable() { @Override public void run() { mDevLoadingView.setBackgroundColor(backgroundColor); mDevLoadingView.setText(message); mDevLoadingView.setTextColor(color); setVisible(true); } }); }
public void updateProgress(final @Nullable String status, final @Nullable Integer done, final @Nullable Integer total) { if (!sEnabled) { return; } UiThreadUtil.runOnUiThread(new Runnable() { @Override public void run() { StringBuilder message = new StringBuilder(); message.append(status != null ? status : "Loading"); if (done != null && total != null && total > 0) { message.append(String.format(Locale.getDefault(), " %.1f%% (%d/%d)", (float) done / total * 100, done, total)); } message.append("\u2026"); // `...` character mDevLoadingView.setText(message); } }); }
private void _addImmersiveListener() { final Activity activity = getCurrentActivity(); if (activity == null) return; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { UiThreadUtil.runOnUiThread(new Runnable() { @TargetApi(Build.VERSION_CODES.KITKAT) @Override public void run() { activity.getWindow().getDecorView().setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() { @Override public void onSystemUiVisibilityChange(int visibility) { boolean isImmersiveOn = 0 != (visibility & UI_FLAG_IMMERSIVE); if (isImmersiveOn != _isImmersiveOn) { emitImmersiveStateChangeEvent(); } } }); } }); } } }
private void _setImmersive(final boolean isOn, final Promise res) { final Activity activity = getCurrentActivity(); if (activity == null) { res.reject(ERROR_NO_ACTIVITY, ERROR_NO_ACTIVITY_MESSAGE); return; } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { UiThreadUtil.runOnUiThread(new Runnable() { @TargetApi(Build.VERSION_CODES.KITKAT) @Override public void run() { _isImmersiveOn = isOn; activity.getWindow().getDecorView().setSystemUiVisibility(isOn ? UI_FLAG_IMMERSIVE : View.SYSTEM_UI_FLAG_VISIBLE); res.resolve(null); } }); } }
private void _getImmersive(final Promise res) { final Activity activity = getCurrentActivity(); if (activity == null) { res.reject(ERROR_NO_ACTIVITY, ERROR_NO_ACTIVITY_MESSAGE); return; } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { UiThreadUtil.runOnUiThread(new Runnable() { @TargetApi(Build.VERSION_CODES.KITKAT) @Override public void run() { int visibility = activity.getWindow().getDecorView().getSystemUiVisibility(); boolean isImmersiveOn = 0 != (visibility & UI_FLAG_IMMERSIVE); WritableMap map = Arguments.createMap(); map.putBoolean("isImmersiveOn", isImmersiveOn); res.resolve(map); } }); } }
@ReactMethod public void showBottomSheetWithOptions(ReadableMap options, final Callback onSelect) { ReadableArray optionArray = options.getArray("options"); final Integer cancelButtonIndex = options.getInt("cancelButtonIndex"); final BottomSheet.Builder builder = new BottomSheet.Builder(this.getCurrentActivity()); // create options Integer size = optionArray.size(); for (int i = 0; i < size; i++) { builder.sheet(i, optionArray.getString(i)); } builder.listener(new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { if (which == cancelButtonIndex) { dialog.dismiss(); } else { onSelect.invoke(which); } } }); UiThreadUtil.runOnUiThread(new Runnable() { @Override public void run() { builder.build().show(); } }); }
.autoDismiss(true); UiThreadUtil.runOnUiThread(new Runnable() { public void run() { if (simple != null) {
UiThreadUtil.runOnUiThread(new Runnable() { public void run() { if (mDialog != null)