{"id":6843,"date":"2021-06-17T11:30:07","date_gmt":"2021-06-17T06:00:07","guid":{"rendered":"https:\/\/www.innovationm.com\/blog\/?p=6843"},"modified":"2023-01-20T18:55:00","modified_gmt":"2023-01-20T13:25:00","slug":"mobile-ux-design-listview-and-gridview","status":"publish","type":"post","link":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/","title":{"rendered":"Mobile UX Design -ListView, GridView and Gradient"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">ListView is the Flutter widget commonly used scrolling widget, It displays children one after another in a scrolling page. children scrolling on the main axis and also it has to fill the cross axis of the listview.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If the item value is non-null the item auto adjust in a scrolling way, <\/span><span style=\"font-weight: 400;\">Specifying an item extension \u00a0is more efficient than letting the children determine their own extent because the scrolling machinery can make use of the foreknowledge of the children&#8217;s extent to save work<\/span><\/p>\n<p><strong>There are four-way to create a ListView<\/strong><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Using Default Constructor<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Using ListView.builder\u00a0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Using ListView .separated<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Using ListView.custom<\/span><\/li>\n<\/ol>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter wp-image-6845 size-full\" src=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/gridview.png\" alt=\"\" width=\"371\" height=\"245\" srcset=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/gridview.png 371w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/gridview-300x198.png 300w\" sizes=\"(max-width: 371px) 100vw, 371px\" \/><\/p>\n<p><b>ListView Creation using default constructor:&#8212;&#8212;-<\/b><\/p>\n<p><span style=\"font-weight: 400;\">It takes a list of children of the widget<\/span><\/p>\n<pre class=\"lang:default decode:true\">ListView(\r\n\r\nList&lt;Children&gt;(\u00a0 \u00a0 )\r\n\r\n);<\/pre>\n<p><span style=\"font-weight: 400;\">This is efficient when you have a limited number of a child because all item preloaded in memory\u00a0<\/span><\/p>\n<pre class=\"lang:default decode:true\">ListView( padding: const EdgeInsets.all(8),\r\n\r\n\u00a0children: &lt;Widget&gt;[ Container(\u00a0\r\n\r\nheight: 50,\r\n\r\n\u00a0color: Colors.amber[600],\r\n\r\n\u00a0child: const Center(child: Text('Entry A')), ),\r\n\r\n\u00a0Container( height: 50, color: Colors.amber[500],\r\n\r\n\u00a0child: const Center(child: Text('Entry B')), ),\r\n\r\n\u00a0Container( height: 50, color: Colors.amber[100],\u00a0\r\n\r\nchild: const Center(child: Text('Entry C')\r\n\r\n),\r\n\r\n\u00a0),\r\n\r\n\u00a0],\r\n\r\n\u00a0)<\/pre>\n<p><b>ListView Creation Using ListView.builder:&#8212;&#8212;-<\/b><\/p>\n<p><span style=\"font-weight: 400;\">ListView.builder constructor takes indexedwidgetBuilder which build child dynamically<\/span><\/p>\n<pre class=\"lang:default decode:true\">ListView.builder(\r\n\r\nItemcount:listofchild.size,\r\n\r\nitemBuilder:(context,index){\r\n\r\nReturn ListTile(\r\n\r\ntitle:Text(\u201cHi this is title\u201d);\r\n\r\n)\r\n\r\n}\r\n\r\n)<\/pre>\n<p><span style=\"font-weight: 400;\">This is efficient when you have a large number of a child because the builder method execute only for those elements which are showing on the screen<\/span><\/p>\n<pre class=\"lang:default decode:true \">ListView.builder(\r\n\r\n\u00a0\u00a0padding: const EdgeInsets.all(8),\r\n\r\n\u00a0\u00a0itemCount: entries.length,\r\n\r\n\u00a0\u00a0itemBuilder: (BuildContext context, int index) {\r\n\r\n\u00a0\u00a0\u00a0\u00a0return Container(\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0height: 50,\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0color: Colors.amber[colorCodes[index]],\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0child: Center(child: Text('Entry ${entries[index]}')),\r\n\r\n\u00a0\u00a0\u00a0\u00a0);\r\n\r\n\u00a0\u00a0}\r\n\r\n);<\/pre>\n<p><b>ListView Creation Using ListView .separated:&#8212;&#8212;<\/b><\/p>\n<p><span style=\"font-weight: 400;\">List<\/span><span style=\"font-weight: 400;\">View.separated constructor takes two parameter\u00a0<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">indexWidgetBuilder:itemBuilder<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">separaterBuilder<\/span><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400;\">site builder build child on demand and separaterBuilder build separate between the child\u00a0<\/span><\/p>\n<pre class=\"lang:default decode:true\">ListView.separated(\r\n\r\n\u00a0\u00a0padding: const EdgeInsets.all(8),\r\n\r\n\u00a0\u00a0itemCount: entries.length,\r\n\r\n\u00a0\u00a0itemBuilder: (BuildContext context, int index) {\r\n\r\n\u00a0\u00a0\u00a0\u00a0return Container(\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0height: 50,\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0color: Colors.amber[colorCodes[index]],\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0child: Center(child: Text('Entry ${entries[index]}')),\r\n\r\n\u00a0\u00a0\u00a0\u00a0);\r\n\r\n\u00a0\u00a0},\r\n\r\n\u00a0\u00a0separatorBuilder: (BuildContext context, int index) =&gt; const Divider(),\r\n\r\n);<\/pre>\n<p><b>ListView Creation using ListView.custom:&#8212;&#8212;-<\/b><\/p>\n<p><span style=\"font-weight: 400;\">Listview, the custom constructor takes silver child delegate which provides the ability to create a custom child model<\/span><\/p>\n<pre class=\"lang:default decode:true \">ListView(\r\n\r\n\u00a0\u00a0shrinkWrap: true,\r\n\r\n\u00a0\u00a0padding: const EdgeInsets.all(20.0),\r\n\r\n\u00a0\u00a0children: const &lt;Widget&gt;[\r\n\r\n\u00a0\u00a0\u00a0\u00a0Text(\"I'm dedicating every day to you\"),\r\n\r\n\u00a0\u00a0\u00a0\u00a0Text('Domestic life was never quite my style'),\r\n\r\n\u00a0\u00a0\u00a0\u00a0Text('When you smile, you knock me out, I fall apart'),\r\n\r\n\u00a0\u00a0\u00a0\u00a0Text('And I thought I was so smart'),\r\n\r\n\u00a0\u00a0],\r\n\r\n)<\/pre>\n<p><b>Child element lifecycle:&#8212;&#8212;<\/b><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Creation<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Destruction<\/span><\/li>\n<\/ol>\n<p><strong>Creation:-<\/strong><\/p>\n<p><span style=\"font-weight: 400;\">When the child displaying on the screen, called the creation phase<\/span><\/p>\n<p><strong>Destruction:-<\/strong><\/p>\n<p><span style=\"font-weight: 400;\">When a child scrolling out of view it automatically destroys and erases from memory<\/span><\/p>\n<p><b>GridView<\/b><\/p>\n<p><span style=\"font-weight: 400;\">GridView is a widget in a flutter that used to display the element one after another or we can say\u00a0 that GridView is used to display the child in 2-D Array\u00a0<\/span><\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-6846 size-full\" src=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/gridview-1.png\" alt=\"\" width=\"184\" height=\"351\" srcset=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/gridview-1.png 184w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/gridview-1-157x300.png 157w\" sizes=\"(max-width: 184px) 100vw, 184px\" \/><\/p>\n<p><b>GridView can implement in a various way:&#8212;<\/b><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Using count\u00a0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Using builder<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Using extent<\/span><\/li>\n<\/ol>\n<p><b>Using GridView.count()<\/b><\/p>\n<p><b>GridView.count <\/b><span style=\"font-weight: 400;\">is commonly used way because we have known child-size so developer know about the number of row and column\u00a0<\/span><\/p>\n<p><strong>Parameters of GridView.count()<\/strong><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">crossAxisCount: it is used to declare the number of column in the view\u00a0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">crossAxisSpacing:- it is used to declare the spacing the between child listed in cross-axis\u00a0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">mainaxisspacing:- it is used to declare the spacing the between child listed in the main axis\u00a0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">scrollDirection:- is used to define the scrolling direction of child<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">reverse:-it reverse the list in the opposite direction<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">physics:-it used to determine how list behave when we reach start to end\u00a0<\/span><\/li>\n<\/ol>\n<p><strong>Example;-<\/strong><\/p>\n<pre class=\"lang:default decode:true\">GridView.count(\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0crossAxisCount: 3,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0crossAxisSpacing: 4.0,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mainAxisSpacing: 8.0,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0children: List.generate(choices.length, (index) {\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return Center(\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0child: SelectCard(choice: choices[index]),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0);<\/pre>\n<p><b>GridView.builder()&#8212;&#8212;<\/b><\/p>\n<p><span style=\"font-weight: 400;\">GridView.builder comes in role when we have large amount of data.<\/span><span style=\"font-weight: 400;\"> the GridView.builder() construct takes SliverGridDelegateWithFixedCrossAxisCount and SliverGridDelegateWithMaxCrossAxisExtent<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The common attribute used\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>Itemcount:-<\/strong>the number of child you want to display\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>gridDelegate:-<\/strong> it determines the grid, its argument should not be null\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><strong>itemBuilder:-<\/strong>it is used to create the item that will be displayed on the screen<\/span><\/p>\n<p><strong>Note :-t will be called only when the indices &gt;= zero &amp;&amp; indices &lt; itemCount.<\/strong><\/p>\n<pre class=\"lang:default decode:true\">GridView.builder(\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0itemCount: images.length,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0crossAxisCount: 2,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0crossAxisSpacing: 4.0,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mainAxisSpacing: 4.0\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0itemBuilder: (BuildContext context, int index){\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return Image.network(images[index]);\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0},\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0)),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0);<\/pre>\n<p><b>GridView.extent()&#8212;&#8211;<\/b><\/p>\n<p><span style=\"font-weight: 400;\">GridView.extent() is used to customize the view with custom\u00a0 extent means each tile has maximum tile extent<\/span><\/p>\n<pre class=\"lang:default decode:true\">GridView.extent(\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0primary: false,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0padding: const EdgeInsets.all(16),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0crossAxisSpacing: 10,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mainAxisSpacing: 10,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0maxCrossAxisExtent: 200.0,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0children: &lt;Widget&gt;[\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Container(\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0padding: const EdgeInsets.all(8),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0child: const Text('First', style: TextStyle(fontSize: 20)),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0color: Colors.yellow,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Container(\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0padding: const EdgeInsets.all(8),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0child: const Text('Four', style: TextStyle(fontSize: 20)),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0color: Colors.yellow,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Container(\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0padding: const EdgeInsets.all(8),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0child: const Text('Fifth', style: TextStyle(fontSize: 20)),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0color: Colors.yellow,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Container(\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0padding: const EdgeInsets.all(8),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0child: const Text('Six', style: TextStyle(fontSize: 20)),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0color: Colors.blue,\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0],\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0)),\u00a0\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0);<\/pre>\n<p><b>Linear Gradient<\/b><\/p>\n<p><span style=\"font-weight: 400;\">Linear gradient<\/span><span style=\"font-weight: 400;\"> as per name <\/span><span style=\"font-weight: 400;\">this gradient flows over a simple linear stretch. Over this stretch is a smooth color transition, This\u00a0 is <\/span><span style=\"font-weight: 400;\">\u00a0<\/span><span style=\"font-weight: 400;\">used in BoxDecoration for decoration of child, it consists of two main parameters as<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Begin\u00a0 \u00a0 \u00a0 \u00a0value lie between 0.0 and 1.0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">End\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 value lies between 0.0 and 1.0<\/span><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400;\">Note:- the value is infraction so the same gradient use for varying sized boxes without changing the parameter.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The color describes by the list of color objects, There must be at least two colors in two colors. it specifies the fraction of vector from start to end between 0.0 and 1.0 for each color. if the value will null color uniformly distribution happen.<\/span><\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-6847 size-full\" src=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/lineargradient.png\" alt=\"\" width=\"240\" height=\"363\" srcset=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/lineargradient.png 240w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/lineargradient-198x300.png 198w\" sizes=\"(max-width: 240px) 100vw, 240px\" \/><\/p>\n<p><strong>Example:-<\/strong><\/p>\n<p><span style=\"font-weight: 400;\">BorderRadius<\/span><span style=\"font-weight: 400;\">.<\/span><span style=\"font-weight: 400;\">circular<\/span><span style=\"font-weight: 400;\">(<\/span><span style=\"font-weight: 400;\">15<\/span><span style=\"font-weight: 400;\">),<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">splashColor: <\/span><span style=\"font-weight: 400;\">Theme<\/span><span style=\"font-weight: 400;\">.<\/span><i><span style=\"font-weight: 400;\">of<\/span><\/i><span style=\"font-weight: 400;\">(context).<\/span><span style=\"font-weight: 400;\">primaryColor<\/span><span style=\"font-weight: 400;\">,<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">child: <\/span><span style=\"font-weight: 400;\">Container<\/span><span style=\"font-weight: 400;\">(padding: <\/span><span style=\"font-weight: 400;\">EdgeInsets<\/span><span style=\"font-weight: 400;\">.<\/span><span style=\"font-weight: 400;\">all<\/span><span style=\"font-weight: 400;\">(<\/span><span style=\"font-weight: 400;\">15<\/span><span style=\"font-weight: 400;\">),<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 child: <\/span><span style=\"font-weight: 400;\">Text<\/span><span style=\"font-weight: 400;\">(<\/span><span style=\"font-weight: 400;\">title<\/span><span style=\"font-weight: 400;\">),<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 decoration: <\/span><span style=\"font-weight: 400;\">BoxDecoration<\/span><span style=\"font-weight: 400;\">(<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 \u00a0 gradient: <\/span><span style=\"font-weight: 400;\">LinearGradient<\/span><span style=\"font-weight: 400;\">(colors: [<\/span><span style=\"font-weight: 400;\">color<\/span><span style=\"font-weight: 400;\">.withOpacity(<\/span><span style=\"font-weight: 400;\">.7<\/span><span style=\"font-weight: 400;\">),<\/span><span style=\"font-weight: 400;\">color<\/span><span style=\"font-weight: 400;\">.withOpacity(<\/span><span style=\"font-weight: 400;\">.5<\/span><span style=\"font-weight: 400;\">)],<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 \u00a0 begin:<\/span><span style=\"font-weight: 400;\">Alignment<\/span><span style=\"font-weight: 400;\">.<\/span><i><span style=\"font-weight: 400;\">topLeft<\/span><\/i><span style=\"font-weight: 400;\">,<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 \u00a0 end:<\/span><span style=\"font-weight: 400;\">Alignment<\/span><span style=\"font-weight: 400;\">.<\/span><i><span style=\"font-weight: 400;\">bottomRight <\/span><\/i><span style=\"font-weight: 400;\">),<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 \u00a0 borderRadius: <\/span><span style=\"font-weight: 400;\">BorderRadius<\/span><span style=\"font-weight: 400;\">.<\/span><span style=\"font-weight: 400;\">circular<\/span><span style=\"font-weight: 400;\">(<\/span><span style=\"font-weight: 400;\">15<\/span><span style=\"font-weight: 400;\">)<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 ),<\/span><\/p>\n<p><b>Radial Gradient:&#8212;<\/b><\/p>\n<p><span style=\"font-weight: 400;\">This is another very important key for designing, This type of gradient changes its color with respect to the center point.<\/span><\/p>\n<pre class=\"lang:default decode:true\">Container(\r\n\r\n\u00a0\u00a0decoration: BoxDecoration(\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0gradient: RadialGradient(\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0colors: [Colors.yellow, Colors.deepPurple],\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Add one stop for each color\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Values should increase from 0.0 to 1.0\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0stops: [0.1, 0.5, 0.75]\r\n\r\n\u00a0\u00a0\u00a0\u00a0),\r\n\r\n\u00a0\u00a0),\r\n\r\n),<\/pre>\n<p><span style=\"font-weight: 400;\">Like linear-gradient, color class contain at least two-color, and values should lie between 0.0 and 1.0<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-6848 size-full\" src=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/flutter-gradiant.png\" alt=\"\" width=\"303\" height=\"399\" srcset=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/flutter-gradiant.png 303w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/flutter-gradiant-228x300.png 228w\" sizes=\"(max-width: 303px) 100vw, 303px\" \/><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>ListView is the Flutter widget commonly used scrolling widget, It displays children one after another in a scrolling page. children scrolling on the main axis and also it has to fill the cross axis of the listview. If the item value is non-null the item auto adjust in a scrolling way, Specifying an item extension [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":6844,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[651],"tags":[655,654,653,150,652,11],"class_list":["post-6843","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ux-design","tag-gradient","tag-gridview","tag-gridview-and-gradient","tag-listview","tag-mobile-ux-design","tag-ux-design"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Mobile UX Design -ListView, GridView and Gradient<\/title>\n<meta name=\"description\" content=\"List view and grid view for mobile user experience design. Many designers use grid view because it&#039;s more appealing to the eye.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mobile UX Design -ListView, GridView and Gradient\" \/>\n<meta property=\"og:description\" content=\"List view and grid view for mobile user experience design. Many designers use grid view because it&#039;s more appealing to the eye.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/\" \/>\n<meta property=\"og:site_name\" content=\"InnovationM - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2021-06-17T06:00:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-01-20T13:25:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/List-vs-grid.png\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"InnovationM Admin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"InnovationM Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/\"},\"author\":{\"name\":\"InnovationM Admin\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"headline\":\"Mobile UX Design -ListView, GridView and Gradient\",\"datePublished\":\"2021-06-17T06:00:07+00:00\",\"dateModified\":\"2023-01-20T13:25:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/\"},\"wordCount\":713,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/06\\\/List-vs-grid.png\",\"keywords\":[\"Gradient\",\"GridView\",\"GridView and Gradient\",\"ListView\",\"Mobile UX Design\",\"UX Design\"],\"articleSection\":[\"UX Design\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/\",\"name\":\"Mobile UX Design -ListView, GridView and Gradient\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/06\\\/List-vs-grid.png\",\"datePublished\":\"2021-06-17T06:00:07+00:00\",\"dateModified\":\"2023-01-20T13:25:00+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"description\":\"List view and grid view for mobile user experience design. Many designers use grid view because it's more appealing to the eye.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/06\\\/List-vs-grid.png\",\"contentUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/06\\\/List-vs-grid.png\",\"width\":960,\"height\":540},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/mobile-ux-design-listview-and-gridview\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mobile UX Design -ListView, GridView and Gradient\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\",\"name\":\"InnovationM - Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\",\"name\":\"InnovationM Admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"caption\":\"InnovationM Admin\"},\"sameAs\":[\"http:\\\/\\\/www.innovationm.com\\\/\"],\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/author\\\/innovationmadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mobile UX Design -ListView, GridView and Gradient","description":"List view and grid view for mobile user experience design. Many designers use grid view because it's more appealing to the eye.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/","og_locale":"en_US","og_type":"article","og_title":"Mobile UX Design -ListView, GridView and Gradient","og_description":"List view and grid view for mobile user experience design. Many designers use grid view because it's more appealing to the eye.","og_url":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/","og_site_name":"InnovationM - Blog","article_published_time":"2021-06-17T06:00:07+00:00","article_modified_time":"2023-01-20T13:25:00+00:00","og_image":[{"width":960,"height":540,"url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/List-vs-grid.png","type":"image\/png"}],"author":"InnovationM Admin","twitter_misc":{"Written by":"InnovationM Admin","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/#article","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/"},"author":{"name":"InnovationM Admin","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"headline":"Mobile UX Design -ListView, GridView and Gradient","datePublished":"2021-06-17T06:00:07+00:00","dateModified":"2023-01-20T13:25:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/"},"wordCount":713,"commentCount":0,"image":{"@id":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/List-vs-grid.png","keywords":["Gradient","GridView","GridView and Gradient","ListView","Mobile UX Design","UX Design"],"articleSection":["UX Design"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/","url":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/","name":"Mobile UX Design -ListView, GridView and Gradient","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/#primaryimage"},"image":{"@id":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/List-vs-grid.png","datePublished":"2021-06-17T06:00:07+00:00","dateModified":"2023-01-20T13:25:00+00:00","author":{"@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"description":"List view and grid view for mobile user experience design. Many designers use grid view because it's more appealing to the eye.","breadcrumb":{"@id":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/#primaryimage","url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/List-vs-grid.png","contentUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2021\/06\/List-vs-grid.png","width":960,"height":540},{"@type":"BreadcrumbList","@id":"https:\/\/www.innovationm.com\/blog\/mobile-ux-design-listview-and-gridview\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.innovationm.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Mobile UX Design -ListView, GridView and Gradient"}]},{"@type":"WebSite","@id":"https:\/\/www.innovationm.com\/blog\/#website","url":"https:\/\/www.innovationm.com\/blog\/","name":"InnovationM - Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.innovationm.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed","name":"InnovationM Admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","caption":"InnovationM Admin"},"sameAs":["http:\/\/www.innovationm.com\/"],"url":"https:\/\/www.innovationm.com\/blog\/author\/innovationmadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/6843","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/comments?post=6843"}],"version-history":[{"count":0,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/6843\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media\/6844"}],"wp:attachment":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media?parent=6843"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/categories?post=6843"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/tags?post=6843"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}