{"id":8674,"date":"2024-03-14T08:30:49","date_gmt":"2024-03-14T08:30:49","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/"},"modified":"2025-08-03T08:10:42","modified_gmt":"2025-08-03T08:10:42","slug":"how-to-use-android-gridview-widget","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/","title":{"rendered":"Android GridView Tutorial: Complete Guide"},"content":{"rendered":"<p>GridView is a commonly used layout widget in Android that displays multiple items in a grid layout. Below are the steps for using GridView:<\/p>\n<ol>\n<li>Add a GridView control to the XML layout file.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">GridView<\/span>\r\n    <span class=\"hljs-attr\">android:id<\/span>=<span class=\"hljs-string\">\"@+id\/gridview\"<\/span>\r\n    <span class=\"hljs-attr\">android:layout_width<\/span>=<span class=\"hljs-string\">\"match_parent\"<\/span>\r\n    <span class=\"hljs-attr\">android:layout_height<\/span>=<span class=\"hljs-string\">\"match_parent\"<\/span>\r\n    <span class=\"hljs-attr\">android:numColumns<\/span>=<span class=\"hljs-string\">\"2\"<\/span>\r\n    <span class=\"hljs-attr\">android:verticalSpacing<\/span>=<span class=\"hljs-string\">\"10dp\"<\/span>\r\n    <span class=\"hljs-attr\">android:horizontalSpacing<\/span>=<span class=\"hljs-string\">\"10dp\"<\/span>\/&gt;<\/span>\r\n<\/code><\/pre>\n<ol>\n<li>In the Activity, obtain an instance of the GridView control and set the adapter.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-type\">GridView<\/span> <span class=\"hljs-variable\">gridView<\/span> <span class=\"hljs-operator\">=<\/span> findViewById(R.id.gridview);\r\ngridView.setAdapter(<span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-title class_\">MyAdapter<\/span>(<span class=\"hljs-built_in\">this<\/span>)); <span class=\"hljs-comment\">\/\/ MyAdapter\u4e3a\u81ea\u5b9a\u4e49\u7684\u9002\u914d\u5668\u7c7b<\/span>\r\n<\/code><\/pre>\n<ol>\n<li>Create a custom adapter class called MyAdapter, which extends BaseAdapter and implements the following methods:<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-meta\">@Override<\/span>\r\n<span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-type\">int<\/span> <span class=\"hljs-title function_\">getCount<\/span><span class=\"hljs-params\">()<\/span> {\r\n    <span class=\"hljs-comment\">\/\/ \u8fd4\u56deGridView\u4e2d\u9879\u76ee\u7684\u6570\u91cf<\/span>\r\n}\r\n\r\n<span class=\"hljs-meta\">@Override<\/span>\r\n<span class=\"hljs-keyword\">public<\/span> Object <span class=\"hljs-title function_\">getItem<\/span><span class=\"hljs-params\">(<span class=\"hljs-type\">int<\/span> position)<\/span> {\r\n    <span class=\"hljs-comment\">\/\/ \u8fd4\u56de\u6307\u5b9a\u4f4d\u7f6e\u7684\u9879\u76ee\u5bf9\u8c61<\/span>\r\n}\r\n\r\n<span class=\"hljs-meta\">@Override<\/span>\r\n<span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-type\">long<\/span> <span class=\"hljs-title function_\">getItemId<\/span><span class=\"hljs-params\">(<span class=\"hljs-type\">int<\/span> position)<\/span> {\r\n    <span class=\"hljs-comment\">\/\/ \u8fd4\u56de\u6307\u5b9a\u4f4d\u7f6e\u7684\u9879\u76eeID<\/span>\r\n}\r\n\r\n<span class=\"hljs-meta\">@Override<\/span>\r\n<span class=\"hljs-keyword\">public<\/span> View <span class=\"hljs-title function_\">getView<\/span><span class=\"hljs-params\">(<span class=\"hljs-type\">int<\/span> position, View convertView, ViewGroup parent)<\/span> {\r\n    <span class=\"hljs-comment\">\/\/ \u8fd4\u56de\u6307\u5b9a\u4f4d\u7f6e\u7684\u9879\u76ee\u89c6\u56fe<\/span>\r\n}\r\n<\/code><\/pre>\n<ol>\n<li>In the getView method of MyAdapter, we can reuse existing views by using the convertView parameter to improve performance. You can use LayoutInflater to load custom item layouts and set different data for each item.<\/li>\n<\/ol>\n<p>By following the above steps, you can now use the GridView control in an Android application to display multiple items.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>GridView is a commonly used layout widget in Android that displays multiple items in a grid layout. Below are the steps for using GridView: Add a GridView control to the XML layout file. &lt;GridView android:id=&#8221;@+id\/gridview&#8221; android:layout_width=&#8221;match_parent&#8221; android:layout_height=&#8221;match_parent&#8221; android:numColumns=&#8221;2&#8243; android:verticalSpacing=&#8221;10dp&#8221; android:horizontalSpacing=&#8221;10dp&#8221;\/&gt; In the Activity, obtain an instance of the GridView control and set the adapter. GridView [&hellip;]<\/p>\n","protected":false},"author":12,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[13,11798,116,117,11799],"class_list":["post-8674","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-android-development","tag-android-gridview","tag-android-ui","tag-android-widgets","tag-grid-layout"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Android GridView Tutorial: Complete Guide - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Learn how to implement Android GridView widget with XML layouts and adapters. Step-by-step guide for beginners.\" \/>\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.silicloud.com\/blog\/how-to-use-android-gridview-widget\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Android GridView Tutorial: Complete Guide\" \/>\n<meta property=\"og:description\" content=\"Learn how to implement Android GridView widget with XML layouts and adapters. Step-by-step guide for beginners.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-14T08:30:49+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-03T08:10:42+00:00\" \/>\n<meta name=\"author\" content=\"Liam\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Liam\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/\"},\"author\":{\"name\":\"Liam\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671\"},\"headline\":\"Android GridView Tutorial: Complete Guide\",\"datePublished\":\"2024-03-14T08:30:49+00:00\",\"dateModified\":\"2025-08-03T08:10:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/\"},\"wordCount\":122,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"keywords\":[\"Android development\",\"Android GridView\",\"Android UI\",\"Android widgets\",\"Grid Layout\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/\",\"name\":\"Android GridView Tutorial: Complete Guide - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-14T08:30:49+00:00\",\"dateModified\":\"2025-08-03T08:10:42+00:00\",\"description\":\"Learn how to implement Android GridView widget with XML layouts and adapters. Step-by-step guide for beginners.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Android GridView Tutorial: Complete Guide\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671\",\"name\":\"Liam\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g\",\"caption\":\"Liam\"},\"sameAs\":[\"http:\/\/Wilson\"],\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/liamwilson\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Android GridView Tutorial: Complete Guide - Blog - Silicon Cloud","description":"Learn how to implement Android GridView widget with XML layouts and adapters. Step-by-step guide for beginners.","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.silicloud.com\/blog\/how-to-use-android-gridview-widget\/","og_locale":"en_US","og_type":"article","og_title":"Android GridView Tutorial: Complete Guide","og_description":"Learn how to implement Android GridView widget with XML layouts and adapters. Step-by-step guide for beginners.","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-14T08:30:49+00:00","article_modified_time":"2025-08-03T08:10:42+00:00","author":"Liam","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Liam","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/"},"author":{"name":"Liam","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671"},"headline":"Android GridView Tutorial: Complete Guide","datePublished":"2024-03-14T08:30:49+00:00","dateModified":"2025-08-03T08:10:42+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/"},"wordCount":122,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"keywords":["Android development","Android GridView","Android UI","Android widgets","Grid Layout"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/","name":"Android GridView Tutorial: Complete Guide - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-14T08:30:49+00:00","dateModified":"2025-08-03T08:10:42+00:00","description":"Learn how to implement Android GridView widget with XML layouts and adapters. Step-by-step guide for beginners.","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-android-gridview-widget\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Android GridView Tutorial: Complete Guide"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671","name":"Liam","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g","caption":"Liam"},"sameAs":["http:\/\/Wilson"],"url":"https:\/\/www.silicloud.com\/blog\/author\/liamwilson\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/8674","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=8674"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/8674\/revisions"}],"predecessor-version":[{"id":153499,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/8674\/revisions\/153499"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=8674"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=8674"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=8674"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}