Convert Figma logo to code with AI

H07000223 logoFlycoDialog_Master

An Android Dialog Lib simplify customization.

2,276
529
2,276
31

Top Related Projects

😍 A beautiful, fluid, and extensible dialogs API for Kotlin & Android.

SweetAlert for Android, a beautiful and clever alert dialog

Advanced dialog solution for android

Nifty Modal Dialog Effects

2,044

💬 DialogX dialog box component library, easy to use, more customizable, more scalable, easy to achieve a variety of dialog boxes. DialogX对话框组件库,更加方便易用,可自定义程度更高,扩展性更强,轻松实现各种对话框、菜单和提示效果,更有Material You、iOS、MIUI等主题扩展可选

Quick Overview

FlycoDialog_Master is an Android library that provides a collection of custom dialog components. It offers a variety of dialog styles and animations, making it easier for developers to create attractive and interactive dialogs in their Android applications.

Pros

  • Wide range of dialog styles and animations
  • Easy to customize and implement
  • Lightweight and efficient
  • Well-documented with sample code

Cons

  • Last updated in 2016, potentially outdated
  • Limited recent community support or maintenance
  • May not fully support newer Android versions or Material Design guidelines
  • Some reported issues with certain dialog types on specific devices

Code Examples

  1. Creating a basic material dialog:
new MaterialDialog.Builder(context)
    .title("Title")
    .content("Content")
    .positiveText("OK")
    .show();
  1. Implementing a custom base dialog:
CustomBaseDialog dialog = new CustomBaseDialog(context) {
    @Override
    public View onCreateView() {
        View view = View.inflate(context, R.layout.dialog_custom, null);
        return view;
    }

    @Override
    public void setUiBeforShow() {
        // Customize dialog UI here
    }
};
dialog.show();
  1. Creating a popup list dialog:
new NormalListDialog.Builder(context)
    .title("Select Item")
    .items(new String[]{"Item 1", "Item 2", "Item 3"})
    .itemsCallback((dialog, position, text) -> {
        // Handle item selection
    })
    .show();

Getting Started

To use FlycoDialog_Master in your Android project:

  1. Add the JitPack repository to your root build.gradle:
allprojects {
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}
  1. Add the dependency to your app's build.gradle:
dependencies {
    implementation 'com.github.H07000223:FlycoDialog_Master:1.3.2'
}
  1. Sync your project and start using the library in your code.

Competitor Comparisons

😍 A beautiful, fluid, and extensible dialogs API for Kotlin & Android.

Pros of material-dialogs

  • More comprehensive and feature-rich library with a wider range of dialog types
  • Better documentation and community support
  • Regular updates and maintenance

Cons of material-dialogs

  • Larger library size, which may impact app size
  • Steeper learning curve due to more complex API

Code Comparison

FlycoDialog_Master:

new MaterialDialog.Builder(this)
    .title("Title")
    .content("Content")
    .positiveText("Agree")
    .show();

material-dialogs:

MaterialDialog(this).show {
    title(text = "Title")
    message(text = "Content")
    positiveButton(text = "Agree")
}

Summary

FlycoDialog_Master is a lightweight and easy-to-use dialog library, while material-dialogs offers a more comprehensive set of features and better long-term support. FlycoDialog_Master may be preferable for simpler projects or when minimizing app size is crucial, whereas material-dialogs is better suited for complex applications requiring a wide range of dialog options and ongoing maintenance.

SweetAlert for Android, a beautiful and clever alert dialog

Pros of sweet-alert-dialog

  • More customizable appearance with a wider range of styling options
  • Better support for material design principles and animations
  • Easier to integrate with existing Android projects

Cons of sweet-alert-dialog

  • Less frequent updates and maintenance compared to FlycoDialog_Master
  • Fewer dialog types and configurations out of the box
  • Limited support for complex layouts within dialogs

Code Comparison

sweet-alert-dialog:

new SweetAlertDialog(this, SweetAlertDialog.WARNING_TYPE)
    .setTitleText("Are you sure?")
    .setContentText("Won't be able to recover this file!")
    .setConfirmText("Yes,delete it!")
    .setConfirmClickListener(new SweetAlertDialog.OnSweetClickListener() {
        @Override
        public void onClick(SweetAlertDialog sDialog) {
            sDialog.dismissWithAnimation();
        }
    })
    .show();

FlycoDialog_Master:

new MaterialDialog.Builder(this)
    .title("MaterialDialog")
    .content("Hello world!")
    .positiveText("OK")
    .negativeText("CANCEL")
    .onPositive(new MaterialDialog.SingleButtonCallback() {
        @Override
        public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
            // Handle positive button click
        }
    })
    .show();

Both libraries offer similar functionality for creating dialogs, but sweet-alert-dialog focuses more on pre-defined styles and animations, while FlycoDialog_Master provides more flexibility in terms of dialog types and customization options.

Advanced dialog solution for android

Pros of dialogplus

  • Simpler API and easier to use for basic dialog scenarios
  • Lightweight library with minimal dependencies
  • Better documentation and examples

Cons of dialogplus

  • Less customization options compared to FlycoDialog_Master
  • Fewer animation styles available
  • Limited support for complex dialog layouts

Code Comparison

FlycoDialog_Master:

new MaterialDialog.Builder(context)
    .title("Title")
    .content("Content")
    .positiveText("OK")
    .negativeText("Cancel")
    .show();

dialogplus:

DialogPlus dialog = DialogPlus.newDialog(this)
    .setContentHolder(new ViewHolder(R.layout.content))
    .setExpanded(true)
    .create();
dialog.show();

Both libraries offer easy-to-use dialog creation, but FlycoDialog_Master provides more built-in options for customization in the initial setup. dialogplus focuses on simplicity and requires less code for basic dialogs, but may need additional configuration for more complex scenarios.

FlycoDialog_Master offers a wider range of dialog types and animations out of the box, while dialogplus provides a more streamlined approach for common dialog use cases. The choice between the two depends on the specific requirements of your project and the level of customization needed.

Nifty Modal Dialog Effects

Pros of NiftyDialogEffects

  • Offers a wider variety of animation effects for dialogs
  • Provides more customization options for dialog appearance
  • Includes built-in support for material design principles

Cons of NiftyDialogEffects

  • Less actively maintained compared to FlycoDialog_Master
  • Fewer dialog types and layouts available out-of-the-box
  • Limited documentation and examples for implementation

Code Comparison

NiftyDialogEffects:

Effectstype effect = Effectstype.Slidetop;
NiftyDialogBuilder dialogBuilder = NiftyDialogBuilder.getInstance(this);
dialogBuilder
    .withTitle("Title")
    .withMessage("Message")
    .withEffect(effect)
    .withButton1Text("OK")
    .show();

FlycoDialog_Master:

new MaterialDialog.Builder(context)
    .title("Title")
    .content("Message")
    .positiveText("OK")
    .show();

Both libraries aim to enhance dialog creation in Android applications, but they differ in their approach and feature set. NiftyDialogEffects focuses on providing a wide range of animation effects and customization options, while FlycoDialog_Master offers a more comprehensive set of dialog types and layouts. The code comparison shows that NiftyDialogEffects requires more setup for basic dialogs, but provides more control over animations. FlycoDialog_Master, on the other hand, offers a simpler API for creating standard dialogs quickly.

2,044

💬 DialogX dialog box component library, easy to use, more customizable, more scalable, easy to achieve a variety of dialog boxes. DialogX对话框组件库,更加方便易用,可自定义程度更高,扩展性更强,轻松实现各种对话框、菜单和提示效果,更有Material You、iOS、MIUI等主题扩展可选

Pros of DialogX

  • More actively maintained with frequent updates
  • Supports a wider range of customization options
  • Better compatibility with modern Android development practices

Cons of DialogX

  • Larger library size, potentially increasing app size
  • Steeper learning curve due to more complex API
  • May require more setup and configuration

Code Comparison

FlycoDialog_Master:

new MaterialDialog.Builder(context)
    .title("Title")
    .content("Content")
    .positiveText("OK")
    .show();

DialogX:

DialogX.build()
    .title("Title")
    .message("Content")
    .positiveButton("OK")
    .show();

Summary

DialogX offers more features and customization options compared to FlycoDialog_Master, but comes with a larger library size and potentially more complex implementation. FlycoDialog_Master is simpler to use but may lack some advanced features. Both libraries provide similar basic functionality for creating dialogs in Android applications.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

FlycoDialog-Master

Android Arsenal

中文版

An Android Dialog Lib simplify customization. Supprot 2.2+.

Features

  • [Built-in Dialog, convenient to use](#Built-in Dialog)
  • [Abundant Built-in Animations, convenient to use](#Abundant Built-in Animations)
  • [Qucik Customize Dialog](#Qucik Customize Dialog)
  • [Qucik Customize Popup](#Qucik Customize Popup)
  • [Support Customize Dialog Animation](#Customize Dialog Animation)

DemoApk Download

Built-in Dialog

DialogDescriptionScreenShotgif
NormalDialogDefault(Two Btns)gif
NormalDialogStyle Twogif
NormalDialogCustom Attrgif
NormalDialogOne Btngif
NormalDialogThree Btnsgif
MaterialDialogDefault(Two Btns)gif
MaterialDialogOne Btngif
MaterialDialogThree Btnsgif
NormalListDialogDefaultgif
NormalListDialogCustom Attrgif
NormalListDialogNo Titlegif
ActionSheetDialogDefaultgif
ActionSheetDialogNo Titlegif

Built-in Popup

PopupDescriptionScreenShotgif
BubblePopupBubblePopupgif

Change Log

v1.3.0(2015-05-21)

  • remove the dependence of NineOldAnimation(only support 3.0+)

v1.2.6(2015-01-07)

  • Combine FlycoAnimation_Lib into FlycoDialog_Lib
  • Fix bug for View in Popup click no response
  • Improve the function of BaseBubblePopup

v1.2.2(2015-12-20)

  • BasePopup small bug fix

v1.2.0(2015-12-19)

  • new added base widget - BasePopup
  • new added built-in widget - BubblePopup
  • BaseDialog support auto dimiss in given delay

Qucik Customize Dialog

  • step1:extends BaseDialog(or BottomBaseDialog or TopBaseDialog)
  • step2:inflate layout and find views in onCreateView method
  • step3:do logic operation in setUiBeforShow method
public class CustomBaseDialog extends BaseDialog<CustomBaseDialog> {
    private TextView tv_cancel;
    private TextView tv_exit;

    public CustomBaseDialog(Context context) {
        super(context);
    }

    @Override
    public View onCreateView() {
        widthScale(0.85f);
        showAnim(new Swing());

        // dismissAnim(this, new ZoomOutExit());
        View inflate = View.inflate(context, R.layout.dialog_custom_base, null);
        tv_cancel = ViewFindUtils.find(inflate, R.id.tv_cancel);
        tv_exit = ViewFindUtils.find(inflate, R.id.tv_exit);
        inflate.setBackgroundDrawable(
                CornerUtils.cornerDrawable(Color.parseColor("#ffffff"), dp2px(5)));

        return inflate;
    }

    @Override
    public boolean setUiBeforShow() {
        tv_cancel.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                dismiss();
            }
        });

        tv_exit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                dismiss();
            }
        });

        return false;
    }
}

Qucik Customize Popup

  • step1:extends BasePopup
  • step2:inflate layout and find views in onCreatePopupView method
  • step3:do logic operation in setUiBeforShow method
public class SimpleCustomPop extends BasePopup<SimpleCustomPop> {
        public SimpleCustomPop(Context context) {
            super(context);
        }

        @Override
        public View onCreatePopupView() {
            return View.inflate(mContext, R.layout.popup_custom, null);
        }

        @Override
        public void setUiBeforShow() {

        }
    }

Gradle

dependencies{
     compile 'com.flyco.dialog:FlycoDialog_Lib:1.2.2@aar'
     compile 'com.flyco.animation:FlycoAnimation_Lib:1.0.0@aar'
     compile 'com.nineoldandroids:library:2.4.0'
}

After v1.2.6
dependencies{
     compile 'com.flyco.dialog:FlycoDialog_Lib:1.2.8@aar'
     compile 'com.nineoldandroids:library:2.4.0'
}

After v1.3.0
dependencies{
     compile 'com.flyco.dialog:FlycoDialog_Lib:1.3.2@aar'
}

Eclispe(no update)

Eclipse Developers should include jars below into your project.

Thanks