0
点赞
收藏
分享

微信扫一扫

simpleApater自定义列表(程序)

少_游 2022-03-30 阅读 31


1、新创建一个XML文件,存放列表

<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/simpleAdaperbtnzdydy"

            android:layout_width="wrap_content"

            android:layout_height="match_parent"/>

</LinearLayout>

2、新创建一个一个XML文件存放列表内容

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

              android:orientation="vertical"

              android:layout_width="match_parent"

              android:layout_height="match_parent">

    <ImageView

            android:id="@+id/imgeviewzdy"

            android:layout_width="60dp"

            android:layout_height="60dp"





            />



    <LinearLayout

            android:layout_width="match_parent"

            android:layout_height="wrap_content"

            android:orientation="vertical"

            android:layout_marginLeft="10dp"



            >

        <TextView

                android:id="@+id/simpletextonezdy"

                android:layout_width="wrap_content"

                android:layout_height="wrap_content"

                android:textColor="@color/red"

                android:text="title"

                android:textSize="18dp"

                />

        <TextView

                android:id="@+id/simpletexttwozdy"

                android:layout_width="wrap_content"

                android:layout_height="wrap_content"

                android:text="info"

                />

    </LinearLayout>

</LinearLayout>

3、创建一个java源文件

package com.example.jj;



import android.app.Activity;

import android.os.Bundle;





import android.util.Log;

import android.widget.BaseAdapter;

import android.widget.ListView;

import android.widget.SimpleAdapter;

import android.widget.TextView;

import org.w3c.dom.Text;





import java.util.ArrayList;

import java.util.List;



/**

 * Created by Administrator on 14-11-24.

 */

public class SimpleApaterZdy extends Activity {

    private ListView listViewzdy;



    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.simpleadaper2);

//获取XML文件中存放列表listview 中id名

        listViewzdy = (ListView) findViewById(R.id.simpleAdaperbtnzdydy);

//获取MyBaseAdapter的数据,MyBaseAdapter是新建另一个java文件

        MyBaseAdapter adapter = new MyBaseAdapter(this,getData());

        listViewzdy.setAdapter(adapter);



    }

------------------------------------------------------------------------------------------------------------------------------------------------------

Massage外部类

package com.example.jj;



/**

 * Created by Administrator on 14-11-24.

 */

public class Massages {



    private int id;

    private String title;

    private String content;

    private int headerIcon;



    public int getId() {

        return id;

    }



    public void setId(int id) {

        this.id = id;

    }



    public String getTitle() {

        return title;

    }



    public void setTitle(String title) {

        this.title = title;

    }



    public String getContent() {

        return content;

    }



    public void setContent(String content) {

        this.content = content;

    }



    public int getHeaderIcon() {

        return headerIcon;

    }



    public void setHeaderIcon(int headerIcon) {

        this.headerIcon = headerIcon;

    }

}



----------------------------------------------------------------------------------------------------------------------------------------------------------


//获取Massges外部类(也可以内部类实现)

    public List<Massages> getData() {

        List<Massages> list = new ArrayList<Massages>();


//new一个massage,装要在XML中展示的内容

        Massages msg = new Massages();

        msg.setId(10);//获取ID

        msg.setTitle("发vbwqrfvqfvqv去");

        msg.setHeaderIcon(R.drawable.tubiao);//获取图标

        msg.setContent("contet111111");获取内容



        Massages msg1 = new Massages();

        msg1.setId(11);

        msg1.setTitle("发vbwqrfvqfvqv去1111");

        msg1.setHeaderIcon(R.drawable.a);

        msg.setContent("conte222");



        Massages msg2 = new Massages();

        msg2.setId(12);

        msg2.setTitle("发vbwqrfvqfvqv去222221");

        msg2.setHeaderIcon(R.drawable.c);

        msg.setContent("contet23333");



        list.add(msg);

        list.add(msg1);

        list.add(msg2);

        return list;

    }



}

4、新建一个java文件实现它的四种方法,对XML中的插件做初始化处理

package com.example.jj;



import android.content.Context;

import android.os.Message;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import android.widget.ImageView;

import android.widget.TextView;



import java.util.ArrayList;

import java.util.List;



/**

 * Created by Administrator on 14-11-24.

 */

public class MyBaseAdapter extends BaseAdapter {

    private List<Massages> mList=new ArrayList<Massages>();

    private LayoutInflater mInflater;

     private Context mcontext;

    public MyBaseAdapter(Context context, List<Massages> list) {

        mcontext=context;



        mInflater = LayoutInflater.from(mcontext);

        mList = list;



    }

//实现方法


    @Override

    public int getCount() {

        return mList.size();

    }



    @Override

    public Object getItem(int position) {

        return mList.get(position);

    }



    @Override

    public long getItemId(int position) {

        return position;

    }


//初始化XML文件里各插件的值

    @Override

    public View getView(int position, View convertView, ViewGroup parent) {

        View view = mInflater.inflate(R.layout.simpleapaterzdy, null);

        ImageView iconImg = (ImageView) view.findViewById(R.id.imgeviewzdy);

        TextView titleTxt = (TextView) view.findViewById(R.id.simpletextonezdy);

        TextView infoTxt = (TextView) view.findViewById(R.id.simpletexttwozdy);



        Massages msg = (Massages) getItem(position);

        iconImg.setImageResource(msg.getHeaderIcon());

        titleTxt.setText(msg.getTitle());

        infoTxt.setText(msg.getContent());

        return view;

    }

}






举报

相关推荐

0 条评论