- 序
- 实例
- 题目
- 程序结果展示界面
- 涉及到的知识点
- 实现过程
- 源码
这一节内容是对04的一个扩展训练。
实例 题目在ListView控件中,使用BaseAdapter适配器。
程序结果展示界面 涉及到的知识点与上节一样。详情请看通过实例学Android应用开发04
实现过程- 新建一个Android应用工程
- 编辑MainActivity对应的布局文件activity_main.xml,包含一个TextView控件和一个ListView控件
- 创建ListView控件的列表布局文件list_item.xml,包含一个ImageView控件和一个TextView控件
- 创建列表控件使用的布局文件item.xml,包含三个TextView控件,通过使用布局属性android:layout_weight控制控件之间的间隔
- 编写程序MainActivity.java
activity_main.xml
list_main.xml
item.xml
MainActivity.java
package com.example.application;
import android.view.View;
import android.widget.*;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import java.util.ArrayList;
import java.util.List;
import android.view.ViewGroup;
public class MainActivity extends AppCompatActivity {
private List persons;
private ListView personLV;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
persons = new ArrayList();
Person p = new Person(1,"张三",5000);
persons.add(p);
Person p1 = new Person(2,"李四",5600);
persons.add(p1);
Person p2 = new Person(3,"王五",5800);
persons.add(p2);
personLV = (ListView) this.findViewById(R.id.personLV);
personLV.setAdapter(new BaseAdapter() {
@Override
public int getCount() {
return persons.size();
}
@Override
public Object getItem(int i) {
return persons.get(i);
}
@Override
public long getItemId(int i) {
return i;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
View item = View.inflate(getApplicationContext(),R.layout.item,null);
TextView idTV = (TextView) item.findViewById(R.id.idTV);
TextView nameTV = (TextView) item.findViewById(R.id.nameTV);
TextView balanceTV = (TextView) item.findViewById(R.id.balanceTV);
Person p = persons.get(i);
idTV.setText(p.getId()+"");
nameTV.setText(p.getName()+"");
balanceTV.setText(p.getBalance()+"");
return item;
}
});
}
}
Person.java
package com.example.application;
public class Person {
private Integer id;
private String name;
private Integer balance;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getBalance() {
return balance;
}
public void setBalance(Integer balance) {
this.balance = balance;
}
public Person() {
}
public Person(Integer id, String name, Integer balance) {
this.id = id;
this.name = name;
this.balance = balance;
}
}



