ListView和BaseAdapter
参考资料:http://www.runoob.com/w3cnote/android-tutorial-listview.html
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.expample.myapplication.MainActivity"> <TextView
android:layout_width="match_parent"
android:layout_height="50dp"
android:id="@+id/mainView_id"/> <TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:id="@+id/subView_id"/>
<TextView
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="#000000"/> </LinearLayout>
public class MainActivity extends Activity {
ListView lv;
List ls;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv = (ListView)findViewById(R.id.listView_id);
ls = new LinkedList<animals>();
ls.add(new animals("猪说", "我是猪吗?"));
ls.add(new animals("猫说", "我是猫吗?"));
ls.add(new animals("狗说", "我是狗吗?"));
ls.add(new animals("熊说", "我是熊吗?"));
ls.add(new animals("兔说", "我是兔吗?"));
ls.add(new animals("虎说", "我是虎吗?"));
ls.add(new animals("鼠说", "我是鼠吗?"));
ls.add(new animals("鸡说", "我是鸡吗?"));
ls.add(new animals("鱼说", "我是鱼吗?"));
MyAdapter adapter = new MyAdapter((LinkedList<animals>)ls, MainActivity.this); lv.setAdapter(adapter);
} class animals{
String main;
String sub; animals(String main, String sub){
this.main = main;
this.sub = sub;
} String getMain(){
return main;
} String getSub(){
return sub;
}
}
class MyAdapter extends BaseAdapter{
LinkedList<animals> mdata;
Context mcontext;
MyAdapter(LinkedList<animals> data, Context context){
this.mdata = data;
this.mcontext = context;
}
@Override
public int getCount() {
return mdata.size();
} @Override
public Object getItem(int position) {
return mdata.get(position);
} @Override
public long getItemId(int position) {
return position;
} @Override
public View getView(int position, View convertView, ViewGroup parent) {
TextView main;
TextView sub; LayoutInflater layoutInflater = LayoutInflater.from(mcontext);
convertView = layoutInflater.inflate(R.layout.item_list_animal, null, false);
main = (TextView) convertView.findViewById(R.id.mainView_id);
sub = (TextView)convertView.findViewById(R.id.subView_id); main.setText(mdata.get(position).getMain());
sub.setText(mdata.get(position).getSub());
return convertView;
}
}
}
ListView和BaseAdapter的更多相关文章
- 第29讲 UI组件之 ListView与 BaseAdapter,SimpleAdapter
第29讲 UI组件之 ListView与 BaseAdapter,SimpleAdapter 1.BaseAdapter BaseAdapter是Android应用程序中经常用到的基础数据适配器,它的 ...
- ListView之BaseAdapter
BaseAdapter可以实现自定义的丰富子项视图,本文实现如下所示结果: 实现代码: /* ListView :列表 BaseAdapter 通用的基础适配器 * * */ public class ...
- Android 杂谈---ListView 之BaseAdapter
前言 几种适配器里面相对来说比较简单的一种适配器,在使用时需要实现几个方法,并且也需要对convertView进行优化 此篇文章以使用listView与BaseAdapter来实现表格样式的布局举例( ...
- andorid 列表视图 ListView 之BaseAdapter
.xml <?xml version="1.0" encoding="utf-8"?> <ListView xmlns:android=&qu ...
- Android关于listView的BaseAdapter以及getView的三级优化
1.4个重写方法的含义 自定义Adapter继承自BaseAdapter(通用适配器) getCount(); getItem(); getItemId(); getViewTypaCount() ...
- android 中listview之BaseAdapter的使用
Listview控件不像其他安卓控件那种直接拖拽到界面上就能用,而是采用类似J2EE中的MVC模型的方式使用,需要通过适配器将某种样式的数据或控件添加到其上而使用. MVC模型实现原理是 数据模型M( ...
- android ListView 和 BaseAdapter 应用
步聚: 1.建立ListView对象:--(作用:绑定Adapter呈现数据) 2.建立ListView实现的Item栏位.xml布局:--(作用:实现ListView的栏位布局) 3.建立Item. ...
- ListView之BaseAdapter的使用
话说开发用了各种Adapter之后感觉用的最舒服的还是BaseAdapter,尽管使用起来比其他适配器有些麻烦,但是使用它却能实现很多自己喜欢的列表布局,比如ListView.GridView.Gal ...
- 43.Android之ListView中BaseAdapter学习
实际开发中个人觉得用的比较多是BaseAdapter,尽管使用起来比其他适配器有些麻烦,但是使用它却能实现很多自己喜欢的列表布局,比如ListView.GridView.Gallery.Spinner ...
- ListView配合BaseAdapter
BaseAdapter使用比较麻烦,它是个抽象类,需要重写4个方法分别是getCount() getItem(..) getItemId(..) getVew(..),相应的使用BaseAdapter ...
随机推荐
- centos 下wps 与goland 不能输入中文的解决办法
输入法:CentOS7自带ibus,如果你用的是fcitx请在对应的地方进行修改 系统:CentOS7,这个方案应该适用于大多数Linux发行版本 intelliJ goland中文输入法问题解决 首 ...
- leetcode 罗马数字转整数
罗马数字包含以下七种字符:I,V,X,L,C,D 和M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做II ,即为两个并列的 1.1 ...
- .NetCore分布式部署中的DataProtection密钥安全性
在.NetCore中默认使用DataProtection来保护数据,例如Cooike等.一般情况下DataProtection生成的密钥会被加密后存储,例如默认的文件存储 可以看到使用了Windows ...
- update sharepoint 2013 cu error
1. 安装过程合理: A. 可以同时在管理中心.两台前端.搜索服务器上安装重新发布的SP1补丁包(所提供的链接) B. 等待所有SP1补丁包安装完成,依次在管理中心.两台前端.搜索服务器上运行配置向导 ...
- Android 内存管理研究
1. 内存管理基础知识 http://www.cnblogs.com/xingfuzzhd/p/3485924.html 1. mImageView.setImageResource(R.drawab ...
- springmvc 通过@ResponseBody 返回json的中文乱码解决方案2个
1.方法上面的RequestMapping要加上红色的部分. @ResponseBody @RequestMapping(value = "/search", prod ...
- python-----读写操作
1. 文件的读取 注意:在windows中文件的路径是这样:C:\Users\name\mystuff .由于\u在python中表示转义如果使用此文件路径就会报错.解决方法: a.把斜杠\改为反斜杠 ...
- Spring注入方式(1)
Spring支持3种依赖注入方式,分别为属性注入.构造器注入和工厂方法注入(很少使用,不推荐),下面分别对属性注入和构造器注入详细讲解. 1.常量注入 属性注入是通过setter方法注入Bean的属性 ...
- jsp页面用struts2标签展示List<Object>类型的数据
今天遇到一个问题,一个List<Object>类型的数据,是直接从sql查出来的数据,要在前端展示,原来的方法不知道为什么不能展示,后来找了好久,找到了一个靠谱的方法,记录一下 <s ...
- Mac 10.12安装网站圆形设计工具Axure RP Pro 7
下载: (链接: https://pan.baidu.com/s/1hsaTafi 密码: 855y)