All Projects → nonzeroapps → whatisnewdialog

nonzeroapps / whatisnewdialog

Licence: Apache-2.0 license
An Android library for displaying a dialog where it presents new features in the app.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to whatisnewdialog

soloalert
A customizable lightweight Alert Library with Material UI and awesome features.
Stars: ✭ 18 (-18.18%)
Mutual labels:  dialogs, dialog, customizable
CustomPermissionsDialogue
Custom Permissions Dialogue is the only permissions library that supports ALL permission request scenarios. This library handles multiple edge cases such as not enabling all permissions or permanently rejecting a permission request.
Stars: ✭ 51 (+131.82%)
Mutual labels:  dialogs, dialog
JavaUltimateTools
A Large Repository Of Awesome Code For Java.
Stars: ✭ 24 (+9.09%)
Mutual labels:  dialogs, dialog
Android Circledialog
仿IOS圆角对话框、进度条、列表框、输入框,ad广告框,支持横竖屏切换
Stars: ✭ 880 (+3900%)
Mutual labels:  dialogs, dialog
silly-android
Android plugins for Java, making core Android APIs easy to use
Stars: ✭ 40 (+81.82%)
Mutual labels:  dialogs, dialog
HijriDatePicker
Material (Gregorian - Hijri) Date & Time Picker
Stars: ✭ 128 (+481.82%)
Mutual labels:  dialogs, dialog
Aestheticdialogs
📱 An Android Library for 💫fluid, 😍beautiful, 🎨custom Dialogs.
Stars: ✭ 352 (+1500%)
Mutual labels:  dialogs, dialog
plain-modal
The simple library for customizable modal window.
Stars: ✭ 21 (-4.55%)
Mutual labels:  dialog, customizable
Simpledialogfragments
A collection of easy to use and extendable DialogFragment's for Android
Stars: ✭ 94 (+327.27%)
Mutual labels:  dialogs, dialog
React Native Material Dialog
Material design dialogs for React Native 💬
Stars: ✭ 135 (+513.64%)
Mutual labels:  dialogs, dialog
Dialogsheet
An Android library to create fully material designed bottom dialogs similar to the Android Pay app.
Stars: ✭ 236 (+972.73%)
Mutual labels:  dialogs, dialog
Fancy Flutter Alert Dialog
flutter package to show well designed alert dialog
Stars: ✭ 103 (+368.18%)
Mutual labels:  dialog, gif
Fancygifdialog Android
Make your native android Dialog Fancy and Gify. A library that takes the standard Android Dialog to the next level with a variety of styling options and Gif's. Style your dialog from code.
Stars: ✭ 409 (+1759.09%)
Mutual labels:  dialog, gif
wui
Collection of GUI widgets for the web
Stars: ✭ 44 (+100%)
Mutual labels:  dialog, customizable
Alertism
A Good Replacement For Default JavaScript Alerts Which Also Makes Good Pop-Ups
Stars: ✭ 19 (-13.64%)
Mutual labels:  dialog, customizable
BalloonPopup
Forget Android Toast! BalloonPopup displays a round or squared popup and attaches it to a View, like a callout. Uses the Builder pattern for maximum ease. The popup can automatically hide and can persist when the value is updated.
Stars: ✭ 32 (+45.45%)
Mutual labels:  dialogs, dialog
TTFancyGifDialog-Android
TTFancyGifDialog makes your Android Dialog Fancy and more Beautiful. A library that makes normal Android Dialog to high level Dialog with many styling options and fully customizable. Make dialog from few lines of code.
Stars: ✭ 61 (+177.27%)
Mutual labels:  dialog, gif
Lovelydialog
This library is a set of simple wrapper classes that are aimed to help you easily create fancy material dialogs.
Stars: ✭ 1,043 (+4640.91%)
Mutual labels:  dialogs, dialog
Swiftypagecontroller
SwiftyPageController will be helpful to use in many pages controller
Stars: ✭ 55 (+150%)
Mutual labels:  parallax, customizable
SimpleDialogs
💬 A simple framework to help displaying dialogs on a WPF app
Stars: ✭ 24 (+9.09%)
Mutual labels:  dialogs, dialog

WhatIsNewDialog

License API

What is new dialog for Android is used for presenting new features in the the app. It can be used in the activity starts, from menu or from a button. It is highly customizable and flexible. It has two options (customizable) where user can either select remind me later or close. Close selection will record that dialog for given version name is seen. So next time it won't be shown to the user. It uses Glide for showing gif and images.

Installation

Gradle

You can download from jitpack.

https://jitpack.io/#nonzeroapps/whatisnewdialog

Features

  • Add unlimited pages for dialog
  • Callbacks for buttons
  • It records the dialog seen condition for future openings
  • Gif support.
  • Parallax effects on view pager
  • It can show network images, gifs or local resources (image or gif) from the project
  • Extracts the accent color from your app's theme
  • Customizable title, positive button and negative button texts
  • Customizable button and title colors (It uses the activity style)
  • Override dialog redirection to Google Play or Feedback form according to your needs
  • Low memory usage
  • Can be used For Night Mode too

If you want the dialog to appear on the start of the app, just add the showDialogIfConditionsSuitable(activity) to the onCreate() method of your Activity class. The dialog will appear when the app is opened and the condition is satisfied.

How to use

Use the dialog as it is

NewItemDialog newItemDialog = NewItemDialog
        .init(this)
        .setVersionName("1.2.0")
        .setDialogTitle("New Features of 1.2.0 Version!")
        .setItems(arrayList);


newItemDialog.showDialog(this);

or for the large example

// Create and show the dialog.

ArrayList<NewFeatureItem> arrayList = new ArrayList<>();
        
NewFeatureItem newFeatureItem = new NewFeatureItem();
newFeatureItem.setFeatureDesc("From now on, you can search all things with keys. For searching please go to ");
newFeatureItem.setFeatureTitle("Searching");
newFeatureItem.setImageResource(R.drawable.androidpicture);
arrayList.add(newFeatureItem);

NewFeatureItem newFeatureItem2 = new NewFeatureItem();
newFeatureItem2.setFeatureTitle("Feature 2");
newFeatureItem2.setFeatureDesc("You waited long for this feature, we know that!!!\n\n From now on, you can follow your friend with our application. This makes our application super and cool. Don't believe my words, try and see it. If you want another features like this please contact with us via e-mail or feedback button.");
newFeatureItem2.setImageResource("https://media.giphy.com/media/JltOMwYmi0VrO/giphy.gif");
arrayList.add(newFeatureItem2);

NewItemDialog
    .init(this)
    .setVersionName("1.2.0")
    .setDialogTitle("New Features of 1.2.0 Version!")
    .setPositiveButtonTitle("Close")
    .setNeutralButtonTitle("Show Me Later")
    .setCancelable(false)
    .setItems(arrayList)
    .setUsePaletteForDescBackground(false) //This can be used for adjusting not using palette (Can be Used For Night Mode)
    .setUsePaletteForImageBackground(false) //This can be used for adjusting not using palette (Can be Used For Night Mode)
    .setCancelButtonListener(new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            Toast.makeText(MainActivity.this, "Close Clicked", Toast.LENGTH_LONG).show();
         }
    })
    .setShowLaterButtonListener(new DialogInterface.OnClickListener() {
         @Override
         public void onClick(DialogInterface dialog, int which) {
            Toast.makeText(MainActivity.this, "Remind Me Later Clicked", Toast.LENGTH_LONG).show();
         }
    })
    .showDialog(this);

Note

  • Use showDialogIfConditionsSuitable() for showing dialog by checking the condition. Dialog will not shown if condition is not satisfied. In other words, user closes the dialog which has the same version name before.
  • Use showDialog() for force show of the dialog without checking the condition.
  • Use isConditionsSuitable() to check if dialog is shown or not.
  • Use clearSharedPref() to delete condition storages.

Sample

Have a look at the sample.

Support

WhatIsNewDialog supports API level 16 and up.

Contribute

  1. Fork it
  2. Create your own branch (git checkout -b new-feature-branch)
  3. Commit your changes (git commit -am 'Some features added')
  4. Push to the your own branch (git push origin new-feature-branch)
  5. Create new Pull Request

Credits

This project was initiated by NonZeroApps. You can contribute to this project by submitting issues or/and by forking this repo and sending a pull request.

Author: Berkay Turancı

License

Copyright (C) 2017 NonZeroApps

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].