मैंने अपने पेज में listview.builder बना लिया है। उसमें मैंने अपना कार्ड डिजाइन किया है। अब मैं एक अस्थायी कार्रवाई बटन में एक onpressed विधि पर क्लिक करके एक-एक करके Listveiw.buider में कार्ड उत्पन्न करना चाहता हूं। उस ऑनप्रेस्ड में मुझे कौन सी विधि / कार्य लिखना चाहिए? और कैसे में कार्ड उत्पन्न करने के लिए और क्या मैं आइटम में बदलना चाहिए और itemBuilder। मुझे वह रोडमैप चाहिए। धन्यवाद।

ListView.builder(
      itemCount: 5,
    itemBuilder: (context, index) {
      return Dismissible(
        key:Key(null),
        direction: DismissDirection.startToEnd,
        onDismissed: (direction) {},
        confirmDismiss: (direction) {
          return showDialog(
              context: context, builder: (_) => DeleteCard());
        },
        background: Container(
          color: Colors.red,
          padding: EdgeInsets.only(left: 16),
          child: Icon(
            Icons.delete,
            color: Colors.white,
          ),
          alignment: Alignment.centerLeft,
        ),
        child: Card(
          shape: RoundedRectangleBorder(
              borderRadius: BorderRadius.circular(12.0)),
          color: Colors.white70,
          child: Column(
            children: <Widget>[
              Row(
                children: <Widget>[
                  Container(
                    width: 120,
                    padding: EdgeInsets.all(10.0),
                    child: Text(
                      "Project ",
                      style: TextStyle(
                          fontSize: 11, fontWeight: FontWeight.bold),
                    ),
                  ),
                  Container(
                    padding: EdgeInsets.all(10.0),
                    child: ProjectName(),
                  ),
                ],
              ),

              // item add start

              Container(
                padding: EdgeInsets.all(10.0),
                child: TextFormField(
                  decoration: InputDecoration(
                    hintText: "Item name" ,hintStyle: TextStyle(fontSize: 12),
                  ),
                ),
              ),
              Container(
                padding: EdgeInsets.all(10.0),
                child: TextFormField(
                  decoration: InputDecoration(
                    hintText: "Amount",hintStyle: TextStyle(fontSize: 12),

                  ),
                  keyboardType: TextInputType.number,
                ),
              ),
            ],
          ),
        ),
      );
    }
  ),
2
Mir Fahim Rahman 25 अक्टूबर 2020, 13:31

2 जवाब

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

यह कुछ ऐसा है जिसे आप मेरे बारे में सोच रहे हैं। बस ListTile को अपने Card से बदलें

import 'package:flutter/material.dart';

void main() => runApp(new MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: HomeScreen(),
    );
  }
}

class HomeScreen extends StatefulWidget {
  @override
  _HomeScreenState createState() => _HomeScreenState();
}

class _HomeScreenState extends State<HomeScreen> {
  var listLength = 1;
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Flutter App :)"),
      ),
      floatingActionButton: FloatingActionButton(
          child: Icon(Icons.add),
          onPressed: () {
            setState(() {
              listLength++;
            });
          }),
      body: Container(
          child: ListView.builder(
              itemCount: listLength,
              itemBuilder: (context, index) {
                return ListTile(
                  leading: Text("$index"),
                  title: Text("List Tile as Widget"),
                );
              })),
    );
  }
}

1
Hamza 25 अक्टूबर 2020, 12:05

मैंने इसे एक वैर का उपयोग करके हल किया है जो कि 0 में प्रारंभिक मूल्य है फिर सेट स्टेट और फ़ंक्शन को वेरिएबल में एक फंक्शन बनाते हैं। तब मैंने अपने फ़्लोटिंग एक्शन बटन और लिस्टव्यू में फंक्शन को बुलाया। बिल्डर आइटम काउंट मैंने var नाम सेट किया। मुझे आशा है कि यह दूसरों को ऑनप्रेस्ड का उपयोग करके कार्ड बनाने के लिए एक आसान समाधान बनाने में मदद करेगा।

0
Mir Fahim Rahman 25 अक्टूबर 2020, 12:05