zoukankan      html  css  js  c++  java
  • Android——GridView(显示文字)

    activity_test9的layout文件:

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     3     xmlns:tools="http://schemas.android.com/tools"
     4     android:layout_width="match_parent"
     5     android:layout_height="match_parent"
     6     android:paddingBottom="@dimen/activity_vertical_margin"
     7     android:paddingLeft="@dimen/activity_horizontal_margin"
     8     android:paddingRight="@dimen/activity_horizontal_margin"
     9     android:paddingTop="@dimen/activity_vertical_margin"
    10     tools:context="com.hanqi.testapp2.TestActivity9">
    11 
    12     <GridView
    13         android:layout_width="match_parent"
    14         android:layout_height="match_parent"
    15         android:id="@+id/gv_1"
    16         android:numColumns="4"
    17         android:stretchMode="columnWidth"
    18         android:gravity="center"
    19         android:horizontalSpacing="30dp"></GridView>
    20 </LinearLayout>

    gridview_layout的layout文件:

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     3     android:orientation="vertical"
     4     android:layout_width="match_parent"
     5     android:layout_height="match_parent">
     6 
     7     <ImageView
     8         android:layout_width="110dp"
     9         android:layout_height="110dp"
    10         android:src="@drawable/f1"
    11         android:id="@+id/iv_3"/>
    12     <TextView
    13         android:layout_width="wrap_content"
    14         android:layout_height="wrap_content"
    15         android:id="@+id/tv_3"
    16         android:text="dfasf"/>
    17 </LinearLayout>

    TestActivity9的java类:

      1 package com.hanqi.testapp2;
      2 
      3 import android.os.Bundle;
      4 import android.support.v7.app.AppCompatActivity;
      5 import android.view.View;
      6 import android.view.ViewGroup;
      7 import android.widget.BaseAdapter;
      8 import android.widget.GridView;
      9 import android.widget.ImageView;
     10 import android.widget.TextView;
     11 
     12 import java.util.ArrayList;
     13 import java.util.List;
     14 
     15 public class TestActivity9 extends AppCompatActivity {
     16 
     17     GridView gv_1;
     18     List<MyClass> liv;
     19     TextView tv_3;
     20     ImageView iv_3;
     21     @Override
     22     protected void onCreate(Bundle savedInstanceState) {
     23         super.onCreate(savedInstanceState);
     24         setContentView(R.layout.activity_test9);
     25         gv_1 = (GridView)findViewById(R.id.gv_1);
     26         tv_3 = (TextView)findViewById(R.id.tv_3);
     27         iv_3 = (ImageView)findViewById(R.id.iv_3);
     28 
     29         //1、数据 图片的id
     30         liv = new ArrayList<>();
     31         MyClass myClass = new MyClass(R.drawable.f1,"美食1的介绍");
     32         liv.add(myClass);
     33         liv.add(new MyClass(R.drawable.f2,"美食2的介绍"));
     34         liv.add(new MyClass(R.drawable.f3,"美食3的介绍"));
     35         liv.add(new MyClass(R.drawable.f4,"美食4的介绍"));
     36         liv.add(new MyClass(R.drawable.f5,"美食5的介绍"));
     37         liv.add(new MyClass(R.drawable.f6,"美食6的介绍"));
     38         liv.add(new MyClass(R.drawable.f7,"美食7的介绍"));
     39         liv.add(new MyClass(R.drawable.f8,"美食8的介绍"));
     40         liv.add(new MyClass(R.drawable.f9,"美食9的介绍"));
     41         ImageAdapter imageAdapter = new ImageAdapter();
     42         {
     43             gv_1.setAdapter(imageAdapter);
     44         }
     45     }
     46     class MyClass
     47     {
     48         private int img;
     49         private String content;
     50 
     51         public int getImg() {
     52             return img;
     53         }
     54 
     55         public void setImg(int img) {
     56             this.img = img;
     57         }
     58 
     59         public String getContent() {
     60             return content;
     61         }
     62 
     63         public void setContent(String content) {
     64             this.content = content;
     65         }
     66         public MyClass(int img,String content)
     67         {
     68             this.img = img;
     69             this.content = content;
     70         }
     71     }
     72     //适配器
     73     class ImageAdapter extends BaseAdapter
     74     {
     75         @Override
     76         public int getCount() {
     77             return liv.size();
     78         }
     79 
     80         @Override
     81         public Object getItem(int position) {
     82             return liv.get(position);
     83         }
     84 
     85         @Override
     86         public long getItemId(int position) {
     87             return 0;
     88         }
     89 
     90         @Override
     91         public View getView(int position, View convertView, ViewGroup parent) {
     92             //1.得到数据 图片的id
     93             MyClass myClass = liv.get(position);
     94             //2.准备View
     95             if (convertView ==null) {
     96                 convertView = View.inflate(TestActivity9.this, R.layout.gridview_layout, null);
     97             }
     98             //3.适配
     99             //转换
    100             ImageView imageView = (ImageView)convertView.findViewById(R.id.iv_3);
    101             imageView.setImageResource(myClass.getImg());
    102 
    103             TextView textView = (TextView)convertView.findViewById(R.id.tv_3);
    104             textView.setText(myClass.getContent());
    105 
    106             return convertView;
    107         }
    108     }
    109 }

    效果图:

  • 相关阅读:
    ## 序列化和反序列化
    C#小型资源管理器
    codeforces #310 div1 B
    codeforces #310 div1 A
    BZOJ 1030 文本生成器
    BZOJ 2806 cheat
    BZOJ 2553 禁忌
    BZOJ 4199 品酒大会
    codeforces #309 div1 D
    codeforces #309 div1 C
  • 原文地址:https://www.cnblogs.com/hanazawalove/p/5513218.html
Copyright © 2011-2022 走看看