• 安卓学习第13课——BaseAdapter


    BaseAdapter创建这么一个对象,需要些四个方法。 int getCount(); Object getItem(int position); long getItemId(int position);View getView(int position, View convertView, ViewGroup parent);(1)列表中的项数(2)返回值的列表内容(3)获得postion处的列表项的ID(4)该列表项里的组件

    package com.example.baseadapter;
    
    
    
    import android.app.Activity;
    import android.graphics.Color;
    import android.os.Bundle;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.BaseAdapter;
    import android.widget.ImageView;
    import android.widget.LinearLayout;
    import android.widget.ListView;
    import android.widget.TextView;
    
    public class MainActivity extends Activity {
    
        ListView mylist;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            mylist=(ListView) findViewById(R.id.myList);
            BaseAdapter adapter=new BaseAdapter(){
    
                @Override
                public int getCount() {
                    return 40;
                }
    
                @Override
                public Object getItem(int position) {
                    return null;
                }
    
                @Override
                public long getItemId(int position) {
                    return position;
                }
    
                @Override
                public View getView(int position, View convertView, ViewGroup parent) {
                    //创建一个LinearLayout,并向其中添加两个组件
                    LinearLayout line=new LinearLayout(MainActivity.this);
                    line.setOrientation(0);
                    ImageView image=new ImageView(MainActivity.this);
                    image.setImageResource(R.drawable.ic_launcher);
                    TextView textview=new TextView(MainActivity.this);
                    textview.setText("第"+(position+1)+"个列表项");
                    textview.setTextSize(20);
                    textview.setTextColor(Color.RED);
                    line.addView(image);
                    line.addView(textview);
                    
                    //返回LinearLayout 实例
                    return line;
                }
                
                
            };
            mylist.setAdapter(adapter);
        }    
    }
    <LinearLayout 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:orientation="vertical">
       <ListView 
           android:id="@+id/myList"
           android:layout_width="match_parent"
        android:layout_height="wrap_content" 
        />
    
    </LinearLayout>

    BaseAdapter是通过写其自带默认方法实现ListView

    所以他的部分布局不是写在Xml里,而是写在Activity里

  • 相关阅读:
    串字符串下沙的沙粒
    格式返回jquery js 获取获得时间差,时间格式为
    类型数组perl6学习
    安装文件win7,ubuntu双系统的安装——准备工作
    下标注意【算法】冒泡排序与选择排序的递归实现
    容器结构Thrift的数据类型系统
    linux初次入门学习小结
    sata拷贝文件时候framebuffer 闪烁问题
    switch_root 到nfs根文件
    Linux内核中64 bit division
  • 原文地址:https://www.cnblogs.com/Yvettey-me/p/3923540.html
Copyright © 2020-2023  润新知