Android 基本控件的使用五(ListView 与 ArrayAdapter)
2016-04-15 10:19
567 查看
项目技术:通过 adapter 来把数据显示出来,
显示这样一个界面:
开发过程:
1.在布局中创建一个 ListVIew (用来呈现数据的)
2.在布局中创建一个item(每一项的显示方式)
3.声明 ListView
4.创建 ArrayList 并 添加数据
5.创建 adapter (要加载的布局,数据)
6.为 ListView 添加适配器
activity_main.xml
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="cn.sohpia.listview.MainActivity"
>
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="match_parent"
></ListView>
</RelativeLayout>
item.xml
<?xml
version="1.0"
encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:text="我们是朋友"
android:padding="10dp"
android:layout_height="match_parent"
>
</TextView>
MainActivity.java
package cn.sohpia.listview;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends Activity {
// 声明控件
private ListView listView;
// 数据源
private List<String>data;
// 适配器
private ArrayAdapter<String>adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 创建ArrayList 用于存储数据
data = new ArrayList<String>();
data.add("aaaaaaaaaaaaa");
data.add("bbbbbbbbbbbbbb");
data.add("ccccccccccccc");
data.add("ddddddddddddd");
data.add("eeeeeeeeeeeee");
data.add("fffffffffffff");
data.add("ggggggggggggg");
// 初始化控件
listView = (ListView) findViewById(R.id.listView);
// 创建一个adapter(item,data(数据))
adapter = new ArrayAdapter<String>(this, R.layout.item,data);
// 为控件设置适配器
listView.setAdapter(adapter);
}
}
显示这样一个界面:
开发过程:
1.在布局中创建一个 ListVIew (用来呈现数据的)
2.在布局中创建一个item(每一项的显示方式)
3.声明 ListView
4.创建 ArrayList 并 添加数据
5.创建 adapter (要加载的布局,数据)
6.为 ListView 添加适配器
activity_main.xml
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="cn.sohpia.listview.MainActivity"
>
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="match_parent"
></ListView>
</RelativeLayout>
item.xml
<?xml
version="1.0"
encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:text="我们是朋友"
android:padding="10dp"
android:layout_height="match_parent"
>
</TextView>
MainActivity.java
package cn.sohpia.listview;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends Activity {
// 声明控件
private ListView listView;
// 数据源
private List<String>data;
// 适配器
private ArrayAdapter<String>adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 创建ArrayList 用于存储数据
data = new ArrayList<String>();
data.add("aaaaaaaaaaaaa");
data.add("bbbbbbbbbbbbbb");
data.add("ccccccccccccc");
data.add("ddddddddddddd");
data.add("eeeeeeeeeeeee");
data.add("fffffffffffff");
data.add("ggggggggggggg");
// 初始化控件
listView = (ListView) findViewById(R.id.listView);
// 创建一个adapter(item,data(数据))
adapter = new ArrayAdapter<String>(this, R.layout.item,data);
// 为控件设置适配器
listView.setAdapter(adapter);
}
}
相关文章推荐
- CM android的CMUpdater分析(二)
- 关于Android中图片大小、内存占用与drawable文件夹关系的研究与分析
- Mac Android studio提交本地项目到Github 以及配置 SSH KEY
- Android Studio:Failed to resolve
- 沉浸式状态栏Immersive Mode & 透明式状态栏Translucent Bars
- android实验五201306114104彭得源
- Android 全景视频播放器(VR视频播放器探索)
- android 多线程 AsyncTask 下载图片
- android:exported 属性详解
- Android性能优化
- Android UltimateRecyclerView优雅地使用RecyclerView
- windows下AndroidStudio配置svn
- android 6.0 and sdk23, when used xx.so has text relocations. bug
- TextView笔记
- Android最佳实践之:StrictMode介绍
- Android Studio:Gradle project refresh failed. Connection timed out: connect.
- 解决Android 6.0动态添加权限问题
- 【转】android系统常用URI
- Android(二)----day2数据存储和界面展现01
- Android天气预报程序(三)