Sobes.tech
Junior

Kādi ir teksta ievades veidi lietotnē?

sobes.tech AI

Atbilde no AI

Ir daudz galveno veidu, kā Flutter ievadīt tekstu:

  1. TextField logrīks:

    • Standarta logrīks vienas rindiņas teksta ievadei.
    • Ļauj pielāgot izskatu, uzvedību, tastatūru, validāciju un kontroli.
    • Piemērots vārdu, e-pasta, paroles un citu lauku ievadei.
    // Piemērs, kā izmantot TextField
    TextField(
      decoration: InputDecoration(
        labelText: 'Vārds',
        border: OutlineInputBorder(),
      ),
      onChanged: (text) {
        // Teksta izmaiņu apstrāde
      },
    )
    
  2. TextFormField logrīks:

    • TextField ietvars, kas integrēts ar Form.
    • Vienkāršo ievades validāciju un formas datu saglabāšanu.
    • Bieži tiek izmantots formās lietotāja datu ievākšanai.
    // Piemērs, kā izmantot TextFormField
    TextFormField(
      decoration: InputDecoration(
        labelText: 'E-pasts',
      ),
      validator: (value) {
        if (value == null || value.isEmpty) {
          return 'Lūdzu, ievadiet e-pastu';
        }
        return null; // Validācija veiksmīga
      },
      onSaved: (value) {
        // Vērtības saglabāšana pēc validācijas
      },
    )
    
  3. EditableText logrīks:

    • Zema līmeņa logrīks rediģējamam tekstam.
    • Nodrošina pamata rediģēšanas iespējas, bet nav iepriekš konfigurēts ar izskatu.
    • Izmanto, veidojot pielāgotus ievades laukus, piemēram, teksta redaktoros.
    // Piemērs, kā izmantot EditableText (prasa vairāk manuālas konfigurācijas)
    EditableText(
      controller: TextEditingController(), // Teksta kontrolieris
      focusNode: FocusNode(), // Fokusēšanas mezgls
      style: TextStyle(color: Colors.black), // Teksta stils
      cursorColor: Colors.blue, // Kursora krāsa
      backgroundCursorColor: Colors.grey, // Kursora fona krāsa
    )
    
  4. Sistēmas tastatūra:

    • Flutter automātiski pārvalda sistēmas tastatūras parādīšanu, fokusējoties uz teksta ievades logrīkiem.
    • Tastatūras tips (skaitlis, burts, e-pasts utt.) var konfigurēt ar keyboardType īpašību TextField vai TextFormField.
    // Skaitliskās tastatūras konfigurācija
    TextField(
      keyboardType: TextInputType.number,
    )
    
  5. Pielāgota tastatūra:

    • Var izveidot savu tastatūru, veidojot pogu logrīkus un apstrādājot to nospiešanu, lai mainītu teksta vērtību kontrolierī.
    • Šis pieejas veids tiek izmantots īpašos gadījumos, piemēram, banku lietojumprogrammās ar unikālu izkārtojumu.
  6. Teksta ielikšana no starpliktuves:

    • TextField un TextFormField pēc noklusējuma atbalsta teksta ielikšanu no starpliktuves ar konteksta izvēlni.
    • Programmatiska pieeja starpliktuvei tiek veikta ar Clipboard klasi.
    import 'package:flutter/services.dart';
    
    // Teksta iegūšana no starpliktuves
    Future<void> pasteText() async {
      ClipboardData? data = await Clipboard.getData(Clipboard.kTextPlain);
      if (data != null) {
        String? text = data.text;
        // Izmantot iegūto tekstu
      }
    }
    

Atkarībā no uzdevuma un UI prasībām izvēlas piemērotāko teksta ievades veidu. Lielākā daļa standarta scenāriju ir pietiekami ar TextField un TextFormField.