Middle
Ar galite papasakoti apie kai kuriuos 'builder' projektavimo modelius Android?
sobes.tech AI
Atsakymas iš AI
„Builder“ (Konstruktorius) modelis naudojamas sudėtingų objektų kūrimui žingsnis po žingsnio.
Pavyzdžiai, kaip naudoti Android:
-
AlertDialog.Builder: Kurti dialogus su galimybe nurodyti antraštę, pranešimą, mygtukus ir kitus parametrus.
new AlertDialog.Builder(context) .setTitle("Pavadinimas") .setMessage("Pranešimo tekstas") .setPositiveButton("Gerai", (dialog, which) -> { // Veiksmas, kai paspaudžiamas OK }) .setNegativeButton("Atšaukti", null) .show(); -
NotificationCompat.Builder: Kurti pranešimus statuso juostoje.
NotificationCompat.Builder builder = new NotificationCompat.Builder(context, CHANNEL_ID) .setSmallIcon(R.drawable.ic_notification) .setContentTitle("Pranešimo pavadinimas") .setContentText("Pranešimo tekstas") .setPriority(NotificationCompat.PRIORITY_DEFAULT); Notification notification = builder.build(); // Siųsti pranešimą per NotificationManager -
Uri.Builder: Kurti URI su įvairiais parametrais.
Uri builtUri = new Uri.Builder() .scheme("http") .authority("www.example.com") .appendPath("kelias") .appendQueryParameter("param1", "reiksme1") .build(); -
ViewModelProvider.Builder: (Lifecycle Architecture Components) Kurti ViewModel fabriką.
ViewModelProvider provider = new ViewModelProvider(activity, new ViewModelProvider.AndroidViewModelFactory(application)); MyViewModel viewModel = provider.get(MyViewModel.class);
Pagrindiniai privalumai naudojant builder:
- Pagerina kodo skaitomumą, kai kuriant objektus su daug neprivalomų parametrų.
- Padeda išvengti daugybės konstruktorių kūrimo.
- Leidžia žingsnis po žingsnio kurti objektą.
- Objektas sukuriamas tik iškvietus
build()metodą.