मैं एक पंजीकरण स्क्रीन विकसित कर रहा हूँ। मुझे स्क्रीन में समान लंबाई वाले सभी फ़ील्ड नहीं मिल सकते हैं। वे विभिन्न प्रकार के फ़ील्ड हैं: लिस्टटाइल, ड्रॉपडाउन बटन और चेकबॉक्स। मैं स्पंदन के लिए नया हूँ। क्या मैं दोनों तरफ समान पैडिंग प्राप्त करने के लिए कोई पैरामीटर लागू कर सकता हूं?

@override
Widget build(BuildContext context) {
  return new Scaffold(
    appBar: new AppBar(
      title: new Text("Register"),
    ),
    body: new Stack(
        children: [
          new Padding(
            padding: const EdgeInsets.only(
                left: 16.0, top: 30.0, right: 16.0, bottom: 16.0),
            child: ListView(
              children: <Widget>[
                new ListTile(
                  leading: const Icon(Icons.person),
                  title: TextField(
                    decoration: InputDecoration(
                      labelText: "Username : ", hintText: " Username ",
                      errorText: _correctUsername ? null : 'Complete Username',),
                    onSubmitted: (value) {
                      _checkInput();
                    },
                    controller: _usernameController,
                  ),
                ),
                new FormField(
                  builder: (FormFieldState state) {
                    return InputDecorator(
                      decoration: InputDecoration(
                        icon: const Icon(Icons.person),
                        labelText: 'Gender',
                        errorText: _correctGender ? null : 'Select Gender',),
                      child: new DropdownButtonHideUnderline(
                        child: new DropdownButton(
                          value: _selectedGender,
                          items: _dropDownMenuGender,
                          onChanged: changedDropDownGender,
                        ),
                      ),
                    );
                  },
                ),
                new ListTile(
                  leading: const Icon(Icons.person),
                  title: TextField(
                    decoration: InputDecoration(
                        labelText: "About me : ", hintText: " About me "),
                    controller: _aboutController,
                  ),
                ),
                new FormField(
                  builder: (FormFieldState state) {
                    return InputDecorator(
                        decoration: InputDecoration(
                          icon: const Icon(Icons.person),
                          labelText: 'I have a car',
                        ),
                        child: new Checkbox(
                            value: _havecar, onChanged: _havecarChanged));
                  },
                ),

              ],
            ),
          ),
        ]
    ),
  );
}

किसी भी तरह की सहायता को आभार समझेंगे। सादर।

1
Marcelo 6 अप्रैल 2019, 08:06

1 उत्तर

सबसे बढ़िया उत्तर

अपने ListTiles को जस्ट से बदलें और icon प्रॉपर्टी पर ध्यान दें।

TextField(
    decoration: InputDecoration(
        labelText: "Username : ",
        hintText: " Username ",
        icon: const Icon(Icons.person),
        errorText: _correctUsername ? null : 'Complete Username',
    ),
    onSubmitted: (value) {
        _checkInput();
    },
    controller: _usernameController,
),
1
jogboms 6 अप्रैल 2019, 09:52