Search in sources :

Example 41 with DialogAction

use of com.afollestad.materialdialogs.DialogAction in project Tapad by berict.

the class UserBenefitsActivity method showDialogPreset.

private void showDialogPreset(int delay) {
    Handler dialogDelay = new Handler();
    dialogDelay.postDelayed(new Runnable() {

        @Override
        public void run() {
            int color;
            switch(prefs.getInt("scheme", 0)) {
                case 1:
                    color = R.color.hello;
                    break;
                case 2:
                    color = R.color.roses;
                    break;
                case 3:
                    color = R.color.faded;
                    break;
                default:
                    color = R.color.hello;
                    break;
            }
            PresetDialog = new MaterialDialog.Builder(activity).title(R.string.dialog_preset_title).content(R.string.user_benefits_dialog_hint).items(R.array.presets).cancelable(false).autoDismiss(false).itemsCallbackSingleChoice(0, new MaterialDialog.ListCallbackSingleChoice() {

                @Override
                public boolean onSelection(MaterialDialog dialog, View view, int which, CharSequence text) {
                    setPreset(which);
                    switch(which) {
                        case 0:
                            PresetDialog.getBuilder().widgetColorRes(R.color.hello).positiveColorRes(R.color.hello);
                            break;
                        case 1:
                            PresetDialog.getBuilder().widgetColorRes(R.color.roses).positiveColorRes(R.color.roses);
                            break;
                        case 2:
                            PresetDialog.getBuilder().widgetColorRes(R.color.faded).positiveColorRes(R.color.faded);
                            break;
                        default:
                            break;
                    }
                    return true;
                }
            }).alwaysCallSingleChoiceCallback().widgetColorRes(color).positiveText(R.string.user_benefits_dialog_positive).positiveColorRes(R.color.colorAccent).onPositive(new MaterialDialog.SingleButtonCallback() {

                @Override
                public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
                    PresetDialog.dismiss();
                    intent.intentFlag(activity, "activity.MainActivity", 0);
                    prefs.edit().putInt("quickstart", 0).apply();
                }
            }).show();
        }
    }, delay);
}
Also used : MaterialDialog(com.afollestad.materialdialogs.MaterialDialog) DialogAction(com.afollestad.materialdialogs.DialogAction) NonNull(android.support.annotation.NonNull) Handler(android.os.Handler) View(android.view.View) TextView(android.widget.TextView)

Example 42 with DialogAction

use of com.afollestad.materialdialogs.DialogAction in project Tapad by berict.

the class MainActivity method setQuickstart.

public void setQuickstart(final Activity activity) {
    final SharedPreferences pref = activity.getSharedPreferences(APPLICATION_ID, MODE_PRIVATE);
    try {
        currentVersionCode = activity.getPackageManager().getPackageInfo(activity.getPackageName(), 0).versionCode;
        Log.i("versionCode", "versionCode retrieved = " + String.valueOf(currentVersionCode));
    } catch (android.content.pm.PackageManager.NameNotFoundException e) {
        // handle exception
        currentVersionCode = -1;
        Log.e("NameNotFound", "NNFE, currentVersionCode = -1");
    }
    try {
        Log.d("VersionCode", "sharedPrefs versionCode = " + String.valueOf(pref.getInt("versionCode", -1)) + " , currentVersionCode = " + String.valueOf(currentVersionCode));
        Log.d("VersionCode", "Updated, show changelog");
        if (currentVersionCode > pref.getInt("versionCode", -1)) {
            // new app and updates
            new MaterialDialog.Builder(activity).title(w.getStringId("info_tapad_info_changelog")).content(w.getStringId("info_tapad_info_changelog_text")).contentColorRes(R.color.dark_primary).positiveText(R.string.dialog_close).positiveColorRes(R.color.colorAccent).dismissListener(new DialogInterface.OnDismissListener() {

                @Override
                public void onDismiss(DialogInterface dialogInterface) {
                    // Dialog
                    if (pref.getInt(qs, 0) == 0) {
                        closeToolbar(activity);
                        new MaterialDialog.Builder(activity).title(R.string.dialog_quickstart_welcome_title).content(R.string.dialog_quickstart_welcome_text).positiveText(R.string.dialog_quickstart_welcome_positive).positiveColorRes(R.color.colorAccent).negativeText(R.string.dialog_quickstart_welcome_negative).negativeColorRes(R.color.dark_secondary).onPositive(new MaterialDialog.SingleButtonCallback() {

                            @Override
                            public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
                                pref.edit().putInt(qs, 0).apply();
                                Log.i("sharedPrefs", "quickstart edited to 0");
                            }
                        }).onNegative(new MaterialDialog.SingleButtonCallback() {

                            @Override
                            public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
                                pref.edit().putInt(qs, -1).apply();
                                Log.i("sharedPrefs", "quickstart edited to -1");
                            }
                        }).dismissListener(new DialogInterface.OnDismissListener() {

                            @Override
                            public void onDismiss(DialogInterface dialogInterface) {
                                if (pref.getInt(qs, 0) == 0) {
                                    Log.i("setQuickstart", "Quickstart started");
                                    if (promptFab != null) {
                                        return;
                                    }
                                    promptToggle = new MaterialTapTargetPrompt.Builder(activity).setTarget(activity.findViewById(R.id.tgl1)).setPrimaryText(R.string.dialog_tap_target_toggle_primary).setSecondaryText(R.string.dialog_tap_target_toggle_secondary).setAnimationInterpolator(new FastOutSlowInInterpolator()).setAutoDismiss(false).setAutoFinish(false).setFocalColourFromRes(R.color.white).setCaptureTouchEventOutsidePrompt(true).setOnHidePromptListener(new MaterialTapTargetPrompt.OnHidePromptListener() {

                                        @Override
                                        public void onHidePrompt(MotionEvent event, boolean tappedTarget) {
                                            if (tappedTarget) {
                                                promptToggle.finish();
                                                promptToggle = null;
                                                pref.edit().putInt(qs, 1).apply();
                                                Log.i("sharedPrefs", "quickstart edited to 1");
                                            }
                                        }

                                        @Override
                                        public void onHidePromptComplete() {
                                            promptButton = new MaterialTapTargetPrompt.Builder(activity).setTarget(activity.findViewById(R.id.btn31)).setPrimaryText(R.string.dialog_tap_target_button_primary).setSecondaryText(R.string.dialog_tap_target_button_secondary).setAnimationInterpolator(new FastOutSlowInInterpolator()).setAutoDismiss(false).setAutoFinish(false).setFocalColourFromRes(R.color.white).setFocalRadius((float) w.convertDPtoPX(80, activity)).setCaptureTouchEventOutsidePrompt(true).setOnHidePromptListener(new MaterialTapTargetPrompt.OnHidePromptListener() {

                                                @Override
                                                public void onHidePrompt(MotionEvent event, boolean tappedTarget) {
                                                    if (tappedTarget) {
                                                        promptButton.finish();
                                                        promptButton = null;
                                                        pref.edit().putInt(qs, 3).apply();
                                                        Log.i("sharedPrefs", "quickstart edited to 3");
                                                    }
                                                }

                                                @Override
                                                public void onHidePromptComplete() {
                                                    promptSwipe = new MaterialTapTargetPrompt.Builder(activity).setTarget(activity.findViewById(R.id.btn23)).setPrimaryText(R.string.dialog_tap_target_swipe_primary).setSecondaryText(R.string.dialog_tap_target_swipe_secondary).setAnimationInterpolator(new FastOutSlowInInterpolator()).setAutoDismiss(false).setAutoFinish(false).setFocalColourFromRes(R.color.white).setFocalRadius((float) w.convertDPtoPX(80, activity)).setCaptureTouchEventOutsidePrompt(true).setOnHidePromptListener(new MaterialTapTargetPrompt.OnHidePromptListener() {

                                                        @Override
                                                        public void onHidePrompt(MotionEvent event, boolean tappedTarget) {
                                                            if (tappedTarget) {
                                                                promptSwipe.finish();
                                                                promptSwipe = null;
                                                                pref.edit().putInt(qs, 4).apply();
                                                                Log.i("sharedPrefs", "quickstart edited to 4");
                                                            }
                                                        }

                                                        @Override
                                                        public void onHidePromptComplete() {
                                                            promptLoop = new MaterialTapTargetPrompt.Builder(activity).setTarget(activity.findViewById(R.id.btn42)).setPrimaryText(R.string.dialog_tap_target_loop_primary).setSecondaryText(R.string.dialog_tap_target_loop_secondary).setAnimationInterpolator(new FastOutSlowInInterpolator()).setAutoDismiss(false).setAutoFinish(false).setFocalColourFromRes(R.color.white).setFocalRadius((float) w.convertDPtoPX(80, activity)).setCaptureTouchEventOutsidePrompt(true).setOnHidePromptListener(new MaterialTapTargetPrompt.OnHidePromptListener() {

                                                                @Override
                                                                public void onHidePrompt(MotionEvent event, boolean tappedTarget) {
                                                                    if (tappedTarget) {
                                                                        promptLoop.finish();
                                                                        promptLoop = null;
                                                                        pref.edit().putInt(qs, 5).apply();
                                                                        Log.i("sharedPrefs", "quickstart edited to 5");
                                                                    }
                                                                }

                                                                @Override
                                                                public void onHidePromptComplete() {
                                                                    promptPattern = new MaterialTapTargetPrompt.Builder(activity).setTarget(activity.findViewById(R.id.tgl7)).setPrimaryText(R.string.dialog_tap_target_pattern_primary).setSecondaryText(R.string.dialog_tap_target_pattern_secondary).setAnimationInterpolator(new FastOutSlowInInterpolator()).setAutoDismiss(false).setAutoFinish(false).setFocalColourFromRes(R.color.white).setCaptureTouchEventOutsidePrompt(true).setOnHidePromptListener(new MaterialTapTargetPrompt.OnHidePromptListener() {

                                                                        @Override
                                                                        public void onHidePrompt(MotionEvent event, boolean tappedTarget) {
                                                                            if (tappedTarget) {
                                                                                promptPattern.finish();
                                                                                promptPattern = null;
                                                                                pref.edit().putInt(qs, 5).apply();
                                                                                Log.i("sharedPrefs", "quickstart edited to 5");
                                                                            }
                                                                        }

                                                                        @Override
                                                                        public void onHidePromptComplete() {
                                                                            promptFab = new MaterialTapTargetPrompt.Builder(activity).setTarget(activity.findViewById(R.id.fab)).setPrimaryText(R.string.dialog_tap_target_fab_primary).setSecondaryText(R.string.dialog_tap_target_fab_secondary).setAnimationInterpolator(new FastOutSlowInInterpolator()).setAutoDismiss(false).setAutoFinish(false).setFocalColourFromRes(R.color.white).setCaptureTouchEventOutsidePrompt(true).setOnHidePromptListener(new MaterialTapTargetPrompt.OnHidePromptListener() {

                                                                                @Override
                                                                                public void onHidePrompt(MotionEvent event, boolean tappedTarget) {
                                                                                    if (tappedTarget) {
                                                                                        promptFab.finish();
                                                                                        promptFab = null;
                                                                                        pref.edit().putInt(qs, 6).apply();
                                                                                        Log.i("sharedPrefs", "quickstart edited to 6");
                                                                                    }
                                                                                }

                                                                                @Override
                                                                                public void onHidePromptComplete() {
                                                                                    promptPreset = new MaterialTapTargetPrompt.Builder(activity).setTarget(activity.findViewById(R.id.toolbar_preset)).setPrimaryText(R.string.dialog_tap_target_preset_primary).setSecondaryText(R.string.dialog_tap_target_preset_secondary).setAnimationInterpolator(new FastOutSlowInInterpolator()).setAutoDismiss(false).setAutoFinish(false).setFocalColourFromRes(R.color.blue_500).setCaptureTouchEventOutsidePrompt(true).setOnHidePromptListener(new MaterialTapTargetPrompt.OnHidePromptListener() {

                                                                                        @Override
                                                                                        public void onHidePrompt(MotionEvent event, boolean tappedTarget) {
                                                                                            if (tappedTarget) {
                                                                                                promptPreset.finish();
                                                                                                promptPreset = null;
                                                                                                pref.edit().putInt(qs, 7).apply();
                                                                                                Log.i("sharedPrefs", "quickstart edited to 7");
                                                                                            }
                                                                                        }

                                                                                        @Override
                                                                                        public void onHidePromptComplete() {
                                                                                        }
                                                                                    }).show();
                                                                                }
                                                                            }).show();
                                                                        }
                                                                    }).show();
                                                                }
                                                            }).show();
                                                        }
                                                    }).show();
                                                }
                                            }).show();
                                        }
                                    }).show();
                                } else {
                                    Log.i("setQuickstart", "Quickstart canceled");
                                    pref.edit().putInt(qs, -1).apply();
                                }
                            }
                        }).show();
                    }
                    // Change this
                    pref.edit().putInt("versionCode", currentVersionCode).apply();
                    Log.d("VersionCode", "putInt " + String.valueOf(pref.getInt("versionCode", -1)));
                }
            }).show();
        }
    } catch (Exception e) {
        Log.e("QuickstartException", e.getMessage());
    }
}
Also used : MaterialDialog(com.afollestad.materialdialogs.MaterialDialog) SharedPreferences(android.content.SharedPreferences) DialogInterface(android.content.DialogInterface) MotionEvent(android.view.MotionEvent) DialogAction(com.afollestad.materialdialogs.DialogAction) NonNull(android.support.annotation.NonNull) FastOutSlowInInterpolator(android.support.v4.view.animation.FastOutSlowInInterpolator) MaterialTapTargetPrompt(uk.co.samuelwall.materialtaptargetprompt.MaterialTapTargetPrompt)

Aggregations

DialogAction (com.afollestad.materialdialogs.DialogAction)42 MaterialDialog (com.afollestad.materialdialogs.MaterialDialog)42 NonNull (android.support.annotation.NonNull)27 View (android.view.View)27 TextView (android.widget.TextView)21 ImageView (android.widget.ImageView)15 RecyclerView (android.support.v7.widget.RecyclerView)13 MenuItem (android.view.MenuItem)12 PopupMenu (android.widget.PopupMenu)12 Intent (android.content.Intent)7 File (java.io.File)7 LayoutInflater (android.view.LayoutInflater)6 Song (io.hefuyi.listener.mvp.model.Song)6 FastScrollRecyclerView (io.hefuyi.listener.widget.fastscroller.FastScrollRecyclerView)6 List (java.util.List)6 Activity (android.app.Activity)4 Bundle (android.os.Bundle)4 ListView (android.widget.ListView)4 IOException (java.io.IOException)4 SuppressLint (android.annotation.SuppressLint)3