use of com.afollestad.materialdialogs.DialogAction in project CoCoin by Nightonke.
the class AccountBookSettingActivity method changeLogo.
// change the user logo/////////////////////////////////////////////////////////////////////////////
private void changeLogo() {
User user = BmobUser.getCurrentUser(CoCoinApplication.getAppContext(), User.class);
if (user == null) {
new MaterialDialog.Builder(this).iconRes(R.drawable.cocoin_logo).typeface(CoCoinUtil.GetTypeface(), CoCoinUtil.GetTypeface()).limitIconToDefaultSize().title(R.string.login_first_title).content(R.string.login_first_content).positiveText(R.string.ok).neutralText(R.string.cancel).onAny(new MaterialDialog.SingleButtonCallback() {
@Override
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
if (which == DialogAction.POSITIVE) {
userOperator();
}
}
}).show();
return;
}
new MaterialDialog.Builder(this).iconRes(R.drawable.cocoin_logo).typeface(CoCoinUtil.GetTypeface(), CoCoinUtil.GetTypeface()).limitIconToDefaultSize().title(R.string.change_logo_title).content(R.string.change_logo_content).positiveText(R.string.from_gallery).negativeText(R.string.from_camera).neutralText(R.string.cancel).onAny(new MaterialDialog.SingleButtonCallback() {
@Override
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
if (which == DialogAction.POSITIVE) {
Intent intent1 = new Intent(Intent.ACTION_PICK, null);
intent1.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, "image/*");
startActivityForResult(intent1, 1);
} else if (which == DialogAction.NEGATIVE) {
Intent intent2 = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent2.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(CoCoinApplication.getAppContext().getFilesDir() + CoCoinUtil.LOGO_NAME)));
startActivityForResult(intent2, 2);
}
}
}).show();
}
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);
}
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());
}
}
use of com.afollestad.materialdialogs.DialogAction in project Shuttle by timusus.
the class PlaylistUtils method createPlaylistDialog.
@SuppressLint("CheckResult")
private static void createPlaylistDialog(final Context context, final OnSavePlaylistListener listener) {
@SuppressLint("InflateParams") View customView = LayoutInflater.from(context).inflate(R.layout.dialog_playlist, null);
final EditText editText = customView.findViewById(R.id.editText);
Observable.fromCallable(() -> makePlaylistName(context)).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(name -> {
editText.setText(name);
if (!TextUtils.isEmpty(name)) {
editText.setSelection(name.length());
}
}, error -> LogUtils.logException(TAG, "PlaylistUtils: Error Setting playlist name", error));
MaterialDialog.Builder builder = DialogUtils.getBuilder(context).customView(customView, false).title(R.string.menu_playlist).positiveText(R.string.create_playlist_create_text).onPositive((materialDialog, dialogAction) -> {
String name = editText.getText().toString();
if (!name.isEmpty()) {
idForPlaylistObservable(context, name).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(id -> {
Uri uri;
if (id >= 0) {
uri = ContentUris.withAppendedId(MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI, id);
clearPlaylist(id);
} else {
ContentValues values = new ContentValues(1);
values.put(MediaStore.Audio.Playlists.NAME, name);
try {
uri = context.getContentResolver().insert(MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI, values);
} catch (IllegalArgumentException | NullPointerException e) {
Toast.makeText(context, R.string.dialog_create_playlist_error, Toast.LENGTH_LONG).show();
uri = null;
}
}
if (uri != null) {
listener.onSave(new Playlist(Playlist.Type.USER_CREATED, Long.valueOf(uri.getLastPathSegment()), name, true, false, true, true, true));
}
}, error -> LogUtils.logException(TAG, "PlaylistUtils: Error Saving playlist", error));
}
}).negativeText(R.string.cancel);
final Dialog dialog = builder.build();
dialog.show();
TextWatcher textWatcher = new TextWatcher() {
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// don't care about this one
}
// Fixme:
// It's probably best to just query all playlist names first, and then check against
// that list, rather than requerying for each char change.
public void onTextChanged(CharSequence s, int start, int before, int count) {
String newText = editText.getText().toString();
if (newText.trim().length() == 0) {
((MaterialDialog) dialog).getActionButton(DialogAction.POSITIVE).setEnabled(false);
} else {
((MaterialDialog) dialog).getActionButton(DialogAction.POSITIVE).setEnabled(true);
// check if playlist with current name exists already, and warn the user if so.
idForPlaylistObservable(context, newText).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(id -> {
if (id >= 0) {
((MaterialDialog) dialog).getActionButton(DialogAction.POSITIVE).setText(R.string.create_playlist_overwrite_text);
} else {
((MaterialDialog) dialog).getActionButton(DialogAction.POSITIVE).setText(R.string.create_playlist_create_text);
}
}, error -> LogUtils.logException(TAG, "PlaylistUtils: Error handling text change", error));
}
}
public void afterTextChanged(Editable s) {
// don't care about this one
}
};
editText.addTextChangedListener(textWatcher);
}
use of com.afollestad.materialdialogs.DialogAction in project SQLPractice by Gear61.
the class QuestionFragment method giveUp.
@OnClick(R.id.view_answer)
public void giveUp() {
final String answer = AnswerServer.getAnswer(mCurrentQuestion);
new MaterialDialog.Builder(getActivity()).title(R.string.our_answer_query).content(answer).positiveText(android.R.string.yes).neutralText(R.string.copy_answer).onNeutral(new MaterialDialog.SingleButtonCallback() {
@Override
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
Utils.copyTextToClipboard(answer);
Utils.showSnackbar(parent, getString(R.string.copy_confirmation));
}
}).show();
}
Aggregations