Middle
Мумкин аст дар бораи баъзе намунаҳои тарҳрезии 'builder' дар Android гап занам?
sobes.tech AI
Ҷавоб аз AI
Беҳсозиш модели "Беҳсоз" (Builder) барои эҷоди объектҳои мураккаб қадам ба қадам истифода мешавад.
Маслиҳатҳои истифода дар Android:
-
AlertDialog.Builder: Эҷоди диалогҳо бо имконияти муайян кардани сарлавҳа, паём, тугмаҳо ва дигар хусусиятҳо.
new AlertDialog.Builder(context) .setTitle("Ном") .setMessage("Матни паём") .setPositiveButton("ОК", (dialog, which) -> { // Ҳаракат дар вақти клик кардани ОК }) .setNegativeButton("Бекор кардан", null) .show(); -
NotificationCompat.Builder: Тартиби огоҳиномаҳо барои сатри ҳолат.
NotificationCompat.Builder builder = new NotificationCompat.Builder(context, CHANNEL_ID) .setSmallIcon(R.drawable.ic_notification) .setContentTitle("Номии огоҳинома") .setContentText("Матни огоҳинома") .setPriority(NotificationCompat.PRIORITY_DEFAULT); Notification notification = builder.build(); // Иҷрои огоҳинома тавассути NotificationManager -
Uri.Builder: Эҷоди URI бо параметрҳои гуногун.
Uri builtUri = new Uri.Builder() .scheme("http") .authority("www.nамуна.com") .appendPath("роҳ") .appendQueryParameter("param1", "қимат1") .build(); -
ViewModelProvider.Builder: (Дар компонентҳои архитектураи давраҳои ҳаёт) Эҷоди фабрика барои ViewModel.
ViewModelProvider provider = new ViewModelProvider(activity, new ViewModelProvider.AndroidViewModelFactory(application)); MyViewModel viewModel = provider.get(MyViewModel.class);
Афзалиятҳои асосии истифодаи builder:
- Беҳтар кардани хонданпазирии коди ҳангоми эҷоди объектҳо бо шумораи зиёди параметрҳои ихтиёрӣ.
- Манъ кардани эҷоди чандин конструктор.
- Таъмини сохтани қадам ба қадам объект.
- Объект танҳо пас аз даъвати методи
build()эҷод мешавад.