FLUTTER ECOSYSTEM

samuelezedi/polls

一个用于投票流程(如选举)的 Flutter 包。

民意调查 项目封面
Stars
31
Forks
18
最近推送(UTC)
2022年6月28日
项目状态
未归档
Samuel Ezedi GitHub avatar
GITHUB User

Samuel Ezedi ↗

Futurist, Music Junkie and Software Engineer

BDR Group, France.Earth官方网站 ↗
语言DartObjective-CJava

此仓库发布的插件

使用的依赖

依赖清单 5 项

原始 README

以下为英文项目原文快照,最新内容请访问 GitHub。

展开 / 收起项目 README

Polls

pub package

GitHub

ScreenShots

Voting Not Voted Yet Voted
https://raw.githubusercontent.com/samuelezedi/polls/master/example/assets/3.gif https://raw.githubusercontent.com/samuelezedi/polls/master/example/assets/1.jpeg https://raw.githubusercontent.com/samuelezedi/polls/master/example/assets/2.jpeg

Usage

Basic:

import 'package:polls/polls.dart';
Polls(
    children: [
        // This cannot be less than 2, else will throw an exception
        Polls.options(title: 'Cairo', value: option1),
        Polls.options(title: 'Mecca', value: option2),
        Polls.options(title: 'Denmark', value: option3),
        Polls.options(title: 'Mogadishu', value: option4),
        ],
        question: Text('What is the capital of Egypt'),
        currentUser: this.user,
        creatorID: this.creator,
        voteData: usersWhoVoted,
        userChoice: usersWhoVoted[this.user],
        onVoteBackgroundColor: Colors.blue,
        leadingBackgroundColor: Colors.blue,
        backgroundColor: Colors.white,
        onVote: (choice) {

            setState(() {
              this.usersWhoVoted[this.user] = choice;
            });
            if (choice == 1) {
            setState(() {
                option1 += 1.0;
            });
            }
            if (choice == 2) {
            setState(() {
                option2 += 1.0;
            });
            }
            if (choice == 3) {
            setState(() {
                option3 += 1.0;
            });
            }
            if (choice == 4) {
            setState(() {
                option4 += 1.0;
            });
        }
    },
);
Poll View type
Polls(
  viewType: PollsType.creator
);
Polls(
viewType: PollsType.voter
);
Polls(
viewType: PollsType.readOnly
);

Why I made this plugin

Apparently, I have built 2 apps that required user voting processes, twice I had to implement same code on different apps. I also had to share the code with a friend, well I thought it would not be a bad idea to create a package off it, cause at this time there was no polls widget package on pub.dev

kindly follow on github

github

Kindly follow me on

twitter medium instagram