android学习笔记——利用BaseAdapter生成40个列表项

RT;

main.xml

?





1

2

3

4

5

6

7

8

9

10

11

12

<?xml version="1.0"
encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

              android:orientation="vertical"

              android:layout_width="match_parent"

              android:layout_height="match_parent"

        >

    <ListView

            android:id="@+id/myList"

            android:layout_width="match_parent"

            android:layout_height="match_parent"

            />

</LinearLayout>

MyActivity.java

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

public class MyActivity extends
Activity {

    /**

     * Called when the activity is first created.

     */

    ListView myList;

    public
void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        myList=(ListView)findViewById(R.id.myList);

        BaseAdapter adapter =new
BaseAdapter() {

            @Override

            public
int getCount() {

                //指定一共包含40个选项

                return
40;

            }

            @Override

            public
Object getItem(int
i) {

                return
null//To change body of implemented methods use File | Settings | File Templates.

            }

//重写该方法,该方法的返回值将作为列表项的ID

            @Override

            public
long getItemId(int
i) {

                return
i;  //To change body of implemented methods use File | Settings | File Templates.

            }

            @Override

            public
View getView(int
i, View view, ViewGroup viewGroup) {

          //创建一个LinerarLayout,并向其中添加两个组件

                LinearLayout line=new
LinearLayout(MyActivity.this);

                line.setOrientation(0);

                ImageView image=new
ImageView(MyActivity.this);

                image.setImageResource(R.drawable.ic_launcher);

                TextView text=new
TextView(MyActivity.this);

                text.setText("第"+(i+1)+"个列表项");

                text.setTextSize(20);

                text.setTextColor(Color.RED);

                line.addView(image);

                line.addView(text);

                //返回LinearLayout实例

                return
line;

            }

        };

        myList.setAdapter(adapter);

    }

}

  效果如图:

创建一个BadeAdapter对象,扩展该对象需要重写如下4个方法

* getCount():该方法的返回值控制该Adapter将会包含多少个列表项。

* getItem():该方法的返回值决定第postion处的列表项的内容。

* getItemId(int i):该方法的返回值决定第postion处的列表项的ID。

* getView(int i,View view,ViewGroup viewGroup): 该方法的返回值决定第i处的列表项组件

android学习笔记——利用BaseAdapter生成40个列表项,布布扣,bubuko.com

时间: 2024-10-27 03:10:25

android学习笔记——利用BaseAdapter生成40个列表项的相关文章

Android学习笔记二十四之ListView列表视图二

Android学习笔记二十四之ListView列表视图二 前面一篇我们介绍了常用的几种适配器的简单实现和ListView的简单使用,这一篇中,我们介绍一下ListView的优化和一些其它的问题. ListView优化方法一 在ListView中,我们最常用的就是自定义Adapter,在我们自定义Adapter中,需要实现两个比较重要的方法getCount()和getView(),前者是负责计算ListView的总Item数,后者是生成Item,有多少个Item就会调用getView()方法多少次

Android学习笔记二十七之ExpandableListView可折叠列表和StackView栈视图

Android学习笔记二十七之ExpandableListView可折叠列表和StackView栈视图 ExpandableListView可折叠列表 这一节我们介绍第三个用适配器的控件,ExpandableListView可折叠列表.这个控件可以实现我们在QQ中非常常见好友分组功能,ExpandableListView是ListView的子类,用法跟ListView差不多,下面我们来学习这个控件的基本使用: 常用属性: android:childDivider:指定各组内子类表项之间的分隔条,

【转】Android 学习笔记——利用JNI技术在Android中调用、调试C++代码

原文网址:http://cherishlc.iteye.com/blog/1756762 在Android中调用C++其实就是在Java中调用C++代码,只是在windows下编译生成DLL,在Android中会生成Linux系统下的.so文件(好吧,其实我基本没用过Linux). 没写过JNI的可以看看我之前的博客(Windows下利用Visual Studio开发的过程):http://cherishlc.iteye.com/admin/blogs/1328136 以及自动生成工具swig的

Pro Android学习笔记(十二):了解Intent(下)

解析Intent,寻找匹配Activity 如果给出component名字(包名.类名)是explicit intent,否则是implicit intent.对于explicit intent,关键就是component 名字,在<intent-fliter>中声明的其他属性被忽略.对于implicit intent,则根据action,category和data来进行匹配.然而一个intent fliter中可以声明多个actions,多个categories,多个data属性,因此可以满

Android 学习笔记(二七):Menu

Menu由两种形式,Option menu和Context menu.前者是按下设备的Menu硬按钮弹出,后者是长按widget弹出. Option Menu 当我们按下Menu的硬件按钮时,Option Menu将被触发显示,最多可以显示6个选项的icon菜单,如果选项多于6个,第6个选项显示为“More“,点击可以进入扩展菜单.我们将在Android学习笔记(十一):Activity-ListView的例子一的基础上来学习Option Menu,也就是一个基于activity的菜单. 在这个

Android学习笔记(十九):建立自己的ListView

在之前的例子中,我们通过设置adapter的getView()来编写我们所希望的UI,然而在面向对编程中,我们希望能够创建自己的ListView,例如类的名字为com.wei.android.learning.RatingView,只要在XML中用我们自己的RatingView对ListView来替代,就可以实现我们的风格,并前在源代码中向使用ListView一样简单调用就可以了. 实现的目标 在Android XML文件中,可以如下调用我们的RatingView: <com.wei.andro

Android学习笔记:Home Screen Widgets(2):关于Widget

通过widget定义,我们在widget列表中看到了我们的TestWidget.当我们拖拽widget到主页时,假设在appwidet-provider中定义了android:configure的java类,在widget实例创建后会立即唤起配置activity. 这个activity主要完毕两个任务:1.配置初始化数据:2.将配置数据适配到widget实例中. 利用preference中存贮配置数据 widget数据能够保持在文件.Share preference,或者SQLite3中.wid

Android学习笔记二

17. 在ContentProvider中定义的getType()方法是定义URI的内容类型. 18. SQLiteDatabase类中的insert/delete/update/query方法其实也挺好用的,我在EquipmentProvider类中做了实现 19. Android专门有个单元测试项目(Android Test Project),在这个项目中,可以新建一个继承AndroidTestCase类的具体测试类来单元测试某个功能.我新建了一个AndroidTestProject项目,在

【转】 Pro Android学习笔记(七八):服务(3):远程服务:AIDL文件

目录(?)[-] 在AIDL中定义服务接口 根据AIDL文件自动生成接口代码 文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处:http://blog.csdn.net/flowingflying/ Remote Service在之前的学习笔记 Android学习笔记(五三):服务Service(下)- Remote Service中介绍过.远程服允许行其他应用调用,及允许RPC(remote procedure call).在Android中remote需要