Middle
Vai vari runāt par dažiem 'builder' dizaina modeļiem Android?
sobes.tech AI
Atbilde no AI
„Builder“ (Būvētājs) modelis tiek izmantots sarežģītu objektu pakāpeniskai izveidei.
Piemēri Android lietošanai:
-
AlertDialog.Builder: Izveidot dialogus ar iespēju norādīt virsrakstu, ziņojumu, pogas un citas īpašības.
new AlertDialog.Builder(context) .setTitle("Nosaukums") .setMessage("Ziņojuma teksts") .setPositiveButton("Labi", (dialog, which) -> { // Darbība, kad tiek nospiesta OK }) .setNegativeButton("Atcelt", null) .show(); -
NotificationCompat.Builder: Izveidot paziņojumus statusa joslā.
NotificationCompat.Builder builder = new NotificationCompat.Builder(context, CHANNEL_ID) .setSmallIcon(R.drawable.ic_notification) .setContentTitle("Paziņojuma virsraksts") .setContentText("Paziņojuma teksts") .setPriority(NotificationCompat.PRIORITY_DEFAULT); Notification notification = builder.build(); // Nosūtīt paziņojumu caur NotificationManager -
Uri.Builder: Izveidot URI ar dažādiem parametriem.
Uri builtUri = new Uri.Builder() .scheme("http") .authority("www.example.com") .appendPath("ceļš") .appendQueryParameter("param1", "vērtība1") .build(); -
ViewModelProvider.Builder: (Lifecycle Architecture Components) Izveidot ViewModel fabrika.
ViewModelProvider provider = new ViewModelProvider(activity, new ViewModelProvider.AndroidViewModelFactory(application)); MyViewModel viewModel = provider.get(MyViewModel.class);
Galvenās priekšrocības, izmantojot būvētāju:
- Uzlabo koda lasāmību, izveidojot objektus ar daudz neobligātiem parametriem.
- Palīdz izvairīties no daudzu konstruktoru izveides.
- Atļauj pakāpeniski veidot objektu.
- Objekts tiek izveidots tikai pēc
build()metodes izsaukšanas.