شنبه ۰۷ بهمن ۰۲ | ۱۰:۵۴ ۴ بازديد
Modifiers در Jetpack Compose
پس از شناخت با طرز اکران متن در نرم افزار اندرویدی با استعمال از ساختار Jetpack Compose دراین نصیب بدین پرسش جواب داده گردد که کاربرد Modifiers در Jetpack Compose چیست و چهگونه میقدرت از آن استفاده طراحی اپلیکیشن در مشهد نمود.
با به کارگیری از Modifiersها میقدرت خصوصیتهایی نظیر رنگ پسقضیه و «کناره» (Padding) را به متن خاطر نشان کرد و ظواهر متن را زیباتر کرد. کد ذیل کیفیت استعمال از Modifiers برای تغییر و تحول رنگ دورنما و اضافه کردن کناره به متن در Jetpack Compose را نشانه می دهد.
@Composable fun SimpleText(text: String) {
BasicText(
text = text,
modifier = Modifier.background(Color.LightGray).padding(16.dp)
)
}
در مثال کد بالا، Modifiers به روال BasicText اضافه گردیده و خصوصیتهای متبوع برای زیباسازی متن را معین نموده است. این نمونه، از متدهای background و padding به ترتیب برای گزینش رنگ دور نما و لبه متن به کارگیری نموده است.
نکته جذاب اعتنا در باب Modifiers این میباشد که ترتیب متدها در آن بر خروجی اثر می گذارد. در نمونه بالا، آغاز خصوصیت background و بعد از آن مشخصه padding قرار گرفته میباشد. در سود، همان گونه که در تصویر بالا مشخص و معلوم میباشد این گزینه باعث میشود که رنگ دورنما به نواحی کناره متن نیز ایفا گردد. برای این که رنگ بگراند فقط به متن انجام گردد کافی میباشد تا مکان این دو مشخصه تغییرو تحول نماید. در مثال کد تحت، ترتیب دو خصوصیت background و padding عوض شده میباشد.
@Composable fun SimpleText(text: String) {
BasicText(
text = text,
modifier = Modifier
.padding(16.dp)
.background(Color.LightGray)
)
}
با تغییر و تحول ترتیب دو خصوصیت فوق خروجی اپلیکیشن به طور پایین خواهد بود.
اکران دیالوگ هشدار در Jetpack Compose
دیالوگها یک کدام از قسمتهای بنیادی در هر اپلیکیشنی محسوب می شوند و برای اکران پیغامهای هشدار یا این که اشتباه آیتم به کارگیری قرار میگیرند. پس از شناخت با مفاهیم ابتدایی در Jetpack Compose درین نصیب طرز به کارگیری از «دیالوگ هشدار» (Alert Dialog) گزینه رسیدگی قرار خواهد گرفت و نمونه بسیار خیر برای شعور عالی روش «نرم افزار نویسی اعلانی» (Declarative Programming) خواهد بود.
برای فهم و شعور خوب راه «اپلیکیشن نویسی اعلانی» (Declarative Programming) میقدرت از مقایسه آن با روش «نرم افزار نویسی دستوری» (Imperative Programming) بهره برد. چون، یکی شایسته ترین شیوهها برای فهم یک معنی استعمال از خواص تضاد و مغایرت میباشد. راه و روش نرمافزار نویسی دستوری بیشتر به چه طور جاری ساختن شدن عملی میپردازد. مثلا، چه گونه می بایست رابط کاربری خاصی را رندر (Render) کرد. بهدنبال، طریق پیادهسازی دیالوگ هشدار در اندروید نقل شده میباشد.
val alertDialog = AlertDialog.Builder(context).setTitle("CODE Magazine!").setMessage("Isn't it amazing?")
// Somewhere else in code if (some_condition_is_met()) {alertDialog.show()}
// Somewhere else in code if (some_other_condition_is_met()) {alertDialog.dismiss()}
از سوی دیگر، رویه نرم افزار نویسی اعلانی پیرو جواب بهاین پرسش میباشد که برای اجرا عملی خاص چه کاری می بایست صورت بپذیرد. برای مثال، برای تشکیل داد رابط کاربری چه چیزی بایستی رندر گردد. قطعه کد ذیل روش اکران دیالوگ هشدار به امداد Jetpack Compose را نماد میدهد.
@Composablefun AlertDialogComponent() {
if (some_condition_is_met()) {
AlertDialog(title = {Text("CODE Mag!")}, text = {Text(text = "Howdy!")})
}
}
در مثال کد بالا، در شکل برقرار بودن شرط متبوع از AlertDialog پیش فرض مو جود در Jetpack Compose برای اکران دیالوگ هشدار به کارگیری می شود. درین شیوه برای بهروزرسانی موقعیت رابط کاربری هیچ کدام از توابع show یا این که dismiss فراخوانی نمیشوند. ضمن این، کد نرمافزار دیگر به کلاس context در اندروید متعلق وجود ندارد.