MOTOSHARE 🚗🏍️
Turning Idle Vehicles into Shared Rides & Earnings

From Idle to Income. From Parked to Purpose.
Earn by Sharing, Ride by Renting.
Where Owners Earn, Riders Move.
Owners Earn. Riders Move. Motoshare Connects.

With Motoshare, every parked vehicle finds a purpose. Owners earn. Renters ride.
🚀 Everyone wins.

Start Your Journey with Motoshare

Building Elegant Multiple Select Dropdown Lists in Flutter

Selecting multiple options from a dropdown list is a common requirement in Flutter app development. While plugins like flutter_custom_selector can simplify the process, let’s explore how to create a beautiful multiple select dropdown list without relying on external plugins. In your Flutter project, you might need a dropdown list that allows users to select multiple languages. Let’s enhance your existing code and provide a more elegant solution.

import 'package:flutter/material.dart';

class MultipleSelectDropdown extends StatefulWidget {
  const MultipleSelectDropdown({Key? key}) : super(key: key);

  @override
  State<MultipleSelectDropdown> createState() => _MultipleSelectDropdownState();
}

class _MultipleSelectDropdownState extends State<MultipleSelectDropdown> {
  List<String> availableLanguages = [
    "Chinese",
    "Spanish",
    "Hindi",
    "Arabic",
    "Bengali",
    "Portuguese",
    "Russian",
    "Japanese",
    "Indonesian",
    "Sinhala",
    "Tamil",
    "Mandarin",
    "Thai",
  ];

  List<String> selectedLanguages = [];

  @override
  Widget build(BuildContext context) {
    double width = MediaQuery.of(context).size.width;
    return Container(
      width: width * 0.8,
      child: Column(
        crossAxisAlignment: CrossAxisAlignment.start,
        children: [
          Text(
            'Select Your Languages',
            style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold),
          ),
          SizedBox(height: 10),
          Container(
            padding: EdgeInsets.all(10),
            decoration: BoxDecoration(
              border: Border.all(color: Colors.grey),
              borderRadius: BorderRadius.circular(8),
            ),
            child: DropdownButtonHideUnderline(
              child: DropdownButton<String>(
                isExpanded: true,
                value: selectedLanguages.isEmpty
                    ? null
                    : selectedLanguages.join(', '),
                hint: Text('Choose Languages'),
                items: availableLanguages.map((String language) {
                  return DropdownMenuItem<String>(
                    value: language,
                    child: Text(language),
                  );
                }).toList(),
                onChanged: (String? value) {
                  setState(() {
                    if (value != null) {
                      if (selectedLanguages.contains(value)) {
                        selectedLanguages.remove(value);
                      } else {
                        selectedLanguages.add(value);
                      }
                    }
                  });
                },
              ),
            ),
          ),
          SizedBox(height: 10),
          Text(
            'Selected Languages: ${selectedLanguages.join(', ')}',
            style: TextStyle(fontSize: 16),
          ),
        ],
      ),
    );
  }
}

Dropdown UI Enhancement:

We’ve wrapped the dropdown in a container for a cleaner look.

Added styling to the dropdown container for better aesthetics.

Multi-Select Functionality:

Modified the dropdown to allow multiple selections.

Display selected languages dynamically below the dropdown.

Improved User Experience:

Included a hint in the dropdown for better user guidance.

Removed the unnecessary Padding and Column in the original code.

Related Posts

Step-by-Step Guide to Implement Azure Security Technologies

In the old days of IT, we built high walls around our data centers and assumed everything inside was safe. Those days are gone. Today, the “perimeter”…

Why Practical Experience is Key in Azure DevOps Expert Training

In the fast-moving world of technology, the way we manage software has changed forever. It is no longer enough to just write code; we must now master…

Mastering Azure Storage and Data Platforms

The move to the cloud is no longer a choice for modern enterprises; it is a necessity. However, simply moving workloads to the cloud isn’t enough. Organizations…

Common Challenges in AWS Data Engineering and Solutions

As an industry veteran who has navigated the evolution from on-premise server racks to serverless cloud architectures, I have witnessed a massive shift. Companies are no longer…

ERP vs CRM – What’s the Real Difference?

In the world of business software, two terms are often confused: ERP (Enterprise Resource Planning)CRM (Customer Relationship Management) Many companies assume they are similar. Some even believe…

What is AWS Certified Security Specialty (SCS-C02) and How to Crack It

In the current technology landscape, migrating to the cloud is no longer an option for most businesses; it is an inevitability. As workloads move to AWS, the…

0 0 votes
Article Rating
Subscribe
Notify of
guest
9 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
trackback

[…] ‘type ‘Null’ is not a subtype of type ‘String’ Errors Building Elegant Multiple Select Dropdown Lists in Flutter PlatformException: read_external_storage_denied in Flutter Android development issues, Android […]

trackback

[…] ‘type ‘Null’ is not a subtype of type ‘String’ Errors Building Elegant Multiple Select Dropdown Lists in Flutter PlatformException: read_external_storage_denied in Flutter API Requests, Error Handling, […]

trackback

[…] ‘type ‘Null’ is not a subtype of type ‘String’ Errors Building Elegant Multiple Select Dropdown Lists in Flutter PlatformException: read_external_storage_denied in Flutter Backup and Restore, Configuration […]

trackback

[…] ‘type ‘Null’ is not a subtype of type ‘String’ Errors Building Elegant Multiple Select Dropdown Lists in Flutter PlatformException: read_external_storage_denied in […]

trackback

[…] ‘type ‘Null’ is not a subtype of type ‘String’ Errors Building Elegant Multiple Select Dropdown Lists in Flutter PlatformException: read_external_storage_denied in Flutter Automation, Compliance, continuous […]

trackback

[…] ‘type ‘Null’ is not a subtype of type ‘String’ Errors Building Elegant Multiple Select Dropdown Lists in Flutter PlatformException: read_external_storage_denied in Flutter Automation, Business Growth, CI/CD, […]

trackback

[…] ‘type ‘Null’ is not a subtype of type ‘String’ Errors Building Elegant Multiple Select Dropdown Lists in Flutter PlatformException: read_external_storage_denied in Flutter Agile Development, Automated […]

trackback

[…] ‘type ‘Null’ is not a subtype of type ‘String’ Errors Building Elegant Multiple Select Dropdown Lists in Flutter PlatformException: read_external_storage_denied in Flutter Agile IT, Automation, Business […]

trackback

[…] ‘type ‘Null’ is not a subtype of type ‘String’ Errors Building Elegant Multiple Select Dropdown Lists in Flutter PlatformException: read_external_storage_denied in Flutter automation in SRE, DevOps, DevOps […]

9
0
Would love your thoughts, please comment.x
()
x