Advertisement
Guest User

Untitled

a guest
Sep 19th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.67 KB | None | 0 0
  1. List<String> exercises = [];
  2. UnmodifiableListView<String> get items => UnmodifiableListView(exercises);
  3.  
  4. @override
  5. void initState() {
  6. super.initState();
  7. for (var i = 0; i < 8; i++) {
  8. exercises.add("$i");
  9. }
  10. }
  11.  
  12. @override
  13. Widget build(BuildContext context) {
  14. return Scaffold(
  15. body: GridView.count(
  16. crossAxisCount: 2,
  17. children: List.generate(items.length, (index) {
  18. return _card(index + 1);
  19. }),
  20. ),
  21. );
  22. }
  23.  
  24. Widget _card(int index) {
  25. return Card(
  26. color: Colors.green,
  27. shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)),
  28. child: Stack(
  29. children: <Widget>[
  30. _images(index.toString()),
  31. _aligmentWidget(
  32. child: ListTile(
  33. title: Wrap(
  34. alignment: WrapAlignment.center,
  35. children: <Widget>[
  36. Text("Biceps", style: profileHeaderCardTitle),
  37. Text("16 Exercises", style: profileHeaderCardNormalTitle),
  38. ],
  39. ),
  40. )),
  41. ],
  42. ),
  43. );
  44. }
  45.  
  46. Widget _images(String index) {
  47. return Positioned.fill(
  48. child: Image.asset(
  49. "assets/images/exercises/$index.png",
  50. fit: BoxFit.fill,
  51. ),
  52. );
  53. }
  54.  
  55. Widget _aligmentWidget({Widget child}) {
  56. return Align(
  57. alignment: Alignment.bottomCenter,
  58. child: Container(
  59. margin: EdgeInsets.only(right: 20),
  60. decoration: BoxDecoration(
  61. color: UIHelper.EXERCISES_CARD_BOTTOM,
  62. borderRadius: BorderRadius.only(
  63. bottomLeft: Radius.circular(15), topRight: Radius.circular(50)),
  64. ),
  65. child: child),
  66. );
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement