5月19日课堂总结

androidmanifest

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
 3     package="com.example.administrator.testapp">
 4 
 5     <application
 6         android:allowBackup="true"
 7         android:icon="@mipmap/ic_launcher"
 8         android:label="@string/app_name"
 9         android:supportsRtl="true"
10         android:theme="@style/AppTheme">
11         <activity android:name=".MainActivity" />
12         <activity android:name=".test_activity6" />
13         <activity android:name=".TestActivity7" />
14         <activity android:name=".TestActivity8"></activity>
15         <activity android:name=".Main2Activity" />
16         <activity android:name=".TestActivity9">
17             <intent-filter>
18                 <action android:name="android.intent.action.MAIN" />
19 
20                 <category android:name="android.intent.category.LAUNCHER" />
21             </intent-filter>
22         </activity>
23     </application>
24 
25 </manifest>

TestActivity9

  1 package com.hanqi.testapp2;
  2 
  3 import android.support.v7.app.AppCompatActivity;
  4 import android.os.Bundle;
  5 import android.util.Log;
  6 import android.view.View;
  7 import android.view.ViewGroup;
  8 import android.widget.BaseAdapter;
  9 import android.widget.ImageView;
 10 import android.widget.ListView;
 11 import android.widget.TextView;
 12 
 13 import java.util.ArrayList;
 14 import java.util.List;
 15 
 16 public class TestActivity8 extends AppCompatActivity {
 17 
 18     ListView lv_3;
 19     List<MyClass> lm;
 20     @Override
 21     protected void onCreate(Bundle savedInstanceState) {
 22         super.onCreate(savedInstanceState);
 23         setContentView(R.layout.activity_test8);
 24 
 25         lv_3 = (ListView)findViewById(R.id.lv_3);
 26 
 27         //数据集合
 28         lm = new ArrayList<>();
 29         MyClass myClass = new MyClass(R.drawable.f1,"美食1","美食1的介绍");
 30         lm.add(myClass);
 31         lm.add(new MyClass(R.drawable.f2,"美食2","美食2的介绍"));
 32         lm.add(new MyClass(R.drawable.f3,"美食3","美食3的介绍"));
 33         lm.add(new MyClass(R.drawable.f4,"美食4","美食4的介绍"));
 34         lm.add(new MyClass(R.drawable.f5,"美食5","美食5的介绍"));
 35         lm.add(new MyClass(R.drawable.f6,"美食6","美食6的介绍"));
 36         lm.add(new MyClass(R.drawable.f7,"美食7","美食7的介绍"));
 37         lm.add(new MyClass(R.drawable.f8,"美食8","美食8的介绍"));
 38         lm.add(new MyClass(R.drawable.f9,"美食9","美食9的介绍"));
 39 
 40         MyBaseAdapter myBaseAdapter = new MyBaseAdapter();
 41         {
 42             lv_3.setAdapter(myBaseAdapter);
 43         }
 44     }
 45 
 46     //装载数据的类 实体类 POJO类
 47     //只包含属性和属性的getter和setter方法
 48     class MyClass
 49     {
 50         //img
 51         private int img;
 52         //name
 53         private String name;
 54         //content
 55         private String content;
 56 
 57         public int getImg() {
 58             return img;
 59         }
 60 
 61         public void setImg(int img) {
 62             this.img = img;
 63         }
 64 
 65         public String getName() {
 66             return name;
 67         }
 68 
 69         public void setName(String name) {
 70             this.name = name;
 71         }
 72 
 73         public String getContent() {
 74             return content;
 75         }
 76 
 77         public void setContent(String content) {
 78             this.content = content;
 79         }
 80         //默认构造方法
 81         public MyClass()
 82         {
 83 
 84         }
 85         //直接初始化属性的构造方法
 86         public MyClass(int img,String name,String content)
 87         {
 88             this.img = img;
 89             this.name = name;
 90             this.content = content;
 91         }
 92     }
 93 
 94     //内部类继承抽象类BaseAdapter实现4个方法
 95     class MyBaseAdapter extends BaseAdapter
 96     {
 97         @Override
 98         public int getCount() {
 99             return lm.size();
100         }
101 
102         @Override
103         public Object getItem(int position) {
104             return lm.get(position);
105         }
106 
107         @Override
108         public long getItemId(int position) {
109             return 0;
110         }
111 
112         //返回适配完成的视图
113         //convertView 可以复用的视图
114         @Override
115         public View getView(int position, View convertView, ViewGroup parent) {
116 
117             //适配一条数据和View
118             //1.得到数据
119             MyClass myClass = lm.get(position);
120 
121             if (convertView ==null)
122             {
123                 Log.e("TAG","适配器getView = "+position);
124                 //2.得到 View
125                 //加载layout文件
126                 convertView = View.inflate(TestActivity8.this, R.layout.simple_adapter, null);
127             }
128             //3.把数据放到View里
129             ImageView imageView = (ImageView)convertView.findViewById(R.id.iv_2);
130             imageView.setImageResource(myClass.getImg());
131 
132             TextView textView = (TextView)convertView.findViewById(R.id.tv_7);
133             textView.setText(myClass.getName());
134 
135             TextView textView1 = (TextView)convertView.findViewById(R.id.tv_8);
136             textView1.setText(myClass.getContent());
137             return convertView;
138         }
139     }
140 }
原文地址:https://www.cnblogs.com/TENOKAWA/p/5509468.html