آموزشهای پراکنده از دنیای برنامه نویسی اندروید
با گسترش اندروید و افزایش تعداد اپلیکیشن های اندرویدی ایجاد طرح های جدید باعث جذابیت بیشتر اپلیکیشن ها می شود.با استفاده از این کتابخانه نیز شما قادر خواهید بود دیالوگ هایی زیبا و جذاب ایجاد کنید.
انواع دیالوگ های موجود در این کتابخانه 6 نوع و به شرح زیر می باشد.
این کتابخانه با برنامه های SDK 14 به بالا سازگار می باشد.
دستور زیر را به فایل build.gradle پروژه خود اضافه کنید و اجازه دهید اندروید استودیو کتابخانه را دانلود نماید.
compile 'com.yarolegovich:lovely-dialog:1.0.4'
توضیحات نحوه استفاده بصورت کامنت در کدها وارد شده است.
کدهای زیر را اضافه کنید تا بتوانید دیالوگ استاندارد با سبک لاولی ایجاد کنید.
new LovelyStandardDialog(this)
.setTopColorRes(R.color.indigo)// رنگ قسمت بالایی
.setButtonsColorRes(R.color.darkDeepOrange)//رنگ دکمه های دیالوگ
.setIcon(R.drawable.ic_star_border_white_36dp)//آیکون بالای دیالوگ
.setTitle(R.string.rate_title) //متن عنوان دیالوگ
.setMessage(R.string.rate_message)//متن پیام دیالوگ
.setPositiveButton(android.R.string.ok, new View.OnClickListener() {//دکمه مثبت دیالوگ - پارامتر اول متن دکمه - پارامتر دوم کلیک لیسنر دکمه
@Override
public void onClick(View v) {
Toast.makeText(context, "positive clicked", Toast.LENGTH_SHORT).show();//ایونت دکمه مثبت (متغییر می باشد.)
}
})
.setNegativeButton(android.R.string.no, null) دکمه منفی (پارامتر ها همانند دکمه مثبت می باشد در این حالت کلیک لیسنر تعریف نشده)
.show();// تابع نمایش دیالوگ
new LovelyInfoDialog(this)
.setTopColorRes(R.color.darkBlueGrey) // رنگ بالای دیالوگ
.setIcon(R.drawable.ic_info_outline_white_36dp) // آیکون بالای دیالوگ
//This will add Don't show again checkbox to the dialog. You can pass any ID as argument
.setNotShowAgainOptionEnabled(0)// چک باکس برای نمایش دوباره یا غیرفعال کردن نمایش دوباره دیالوگ را فعال غیر فعال می کند
.setTitle(R.string.info_title)//عنوان دیالوگ
.setMessage(R.string.info_message)//پیام دیالوگ
.show();
ArrayAdapter<DonationOption> adapter = new DonationAdapter(this, loadDonationOptions());// اداپتر نمایش آیتمهای کاستوم
new LovelyChoiceDialog(this)
.setTopColorRes(R.color.darkGreen)//رنگ عنوان
.setTitle(R.string.donate_title)//متن عنوان
.setIcon(R.drawable.ic_local_atm_white_36dp)//آیکون عنوان
.setMessage(R.string.donate_message)//متن پیام
.setItems(adapter, new LovelyChoiceDialog.OnItemSelectedListener<DonationOption>() {//ست کردن آداپتر و تعریف کردن آیتم کلیک لیسنر
@Override
public void onItemSelected(int position, DonationOption item) {
Toast.makeText(context, getString(R.string.you_donated, item.amount),Toast.LENGTH_SHORT).show();
}
})
.show();
String[] items = getResources().getStringArray(R.array.food);//آرایه برای ست کردن به گزینه ها
new LovelyChoiceDialog(this, R.style.CheckBoxTintTheme)//ست کردن تم تعریف شده به دیالوگ
.setTopColorRes(R.color.darkRed)//رنگ عنوان
.setTitle(R.string.order_food_title)//متن عنوان
.setIcon(R.drawable.ic_food_white_36dp)//آیکون عنوان
.setItemsMultiChoice(items, new LovelyChoiceDialog.OnItemsSelectedListener<String>() {//ست کردن آیتم ها و آیتم کلیک لیسنر برای آنها
@Override
public void onItemsSelected(List<Integer> positions, List<String> items) {
Toast.makeText(MainActivity.this,
getString(R.string.you_ordered, TextUtils.join("\n", items)),
Toast.LENGTH_SHORT)
.show();
}
})
.setConfirmButtonText(R.string.confirm)//متن دکمه تایید
.show();
new LovelyTextInputDialog(this, R.style.EditTextTintTheme)//ست کردن استایل به دیالوگ
.setTopColorRes(R.color.darkDeepOrange)//رنگ عنوان
.setTitle(R.string.text_input_title)//متن عنوان
.setMessage(R.string.text_input_message)//پیام عنوان
.setIcon(R.drawable.ic_assignment_white_36dp) //آیکون عنوان
.setInputFilter(R.string.text_input_error_message, new LovelyTextInputDialog.TextFilter() {//ست کردن هینت به ادیت تسکت و فیلتر برای کنترل داده ورودی
@Override
public boolean check(String text) {
return text.matches("\\w+");
}
})
.setConfirmButton(android.R.string.ok, new LovelyTextInputDialog.OnTextInputConfirmListener() {//ست کردن نوشته دکمه تایید و لیسنر برای دریافت یادداشت
@Override
public void onTextInputConfirmed(String text) {//یادداشت ادیت تکست به صورت پارامتر می باشد
Toast.makeText(MainActivity.this, text, Toast.LENGTH_SHORT).show();
}
})
.show();
new LovelyProgressDialog(this)
.setIcon(R.drawable.ic_cast_connected_white_36dp)//آیکون دیالوگ
.setTitle(R.string.connecting_to_server)//عنوان دیالوگ
.setTopColorRes(R.color.teal)// رنگ عنوان دیالوگ
.show();
new LovelyCustomDialog(this)
.setView(R.layout.item_donate_option)//ست کردن ویو کاستوم
.setTopColorRes(R.color.darkDeepOrange)// رنگ عنوان دیالوگ
.setTitle(R.string.text_input_title)//متن عنوان دیالوگ
.setMessage(R.string.text_input_message)// پیام دیالوگ
.setIcon(R.drawable.ic_assignment_white_36dp)//آیکون دیالوگ
.configureView(/* ... */)//ست کردن جزیات ویو
.setListener(R.id.ld_btn_yes, /* ... */)//ست کردن لیسنر ها
.setInstanceStateManager(/* ... */)
.show();
<style name="TintTheme" parent="Theme.AppCompat.Light.Dialog.Alert">
<item name="colorAccent">@color/colorToTintWith</item>
</style>