app第一阶段冲刺第八天

 

今天为我的个人主页写了adapter,具体有以下几个文件

package com.linlang.grasharepro.adapter;

import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.Toast;

import com.linlang.grasharepro.R;
import com.linlang.grasharepro.activity.ADBanner.BaseWebActivity;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;

import java.util.List;

public class ImagePagerAdapter extends BaseAdapter {

    private Context context;
    private List<String> imageIdList;
    private List<String> linkUrlArray;
    private List<String> urlTitlesList;
    private int size;
    private boolean isInfiniteLoop;
    private ImageLoader imageLoader;
    private DisplayImageOptions options;

    public ImagePagerAdapter(Context context, List<String> imageIdList,
                             List<String> urllist, List<String> urlTitlesList) {
        this.context = context;
        this.imageIdList = imageIdList;
        if (imageIdList != null) {
            this.size = imageIdList.size();
        }
        this.linkUrlArray = urllist;
        this.urlTitlesList = urlTitlesList;
        isInfiniteLoop = false;
        // 初始化imageLoader 否则会报错
        imageLoader = ImageLoader.getInstance();
        imageLoader.init(ImageLoaderConfiguration.createDefault(context));
        options = new DisplayImageOptions.Builder()
                .showStubImage(R.drawable.ic_launcher) // 设置图片下载期间显示的图片
                .showImageForEmptyUri(R.drawable.meinv) // 设置图片Uri为空或是错误的时候显示的图片
                .showImageOnFail(R.drawable.meinv) // 设置图片加载或解码过程中发生错误显示的图片
                .cacheInMemory(true) // 设置下载的图片是否缓存在内存中
                .cacheOnDisc(true) // 设置下载的图片是否缓存在SD卡中
                .build();

    }

    @Override
    public int getCount() {
        // Infinite loop
        return isInfiniteLoop ? Integer.MAX_VALUE : imageIdList.size();
    }

    /**
     * get really position
     *
     * @param position
     * @return
     */
    private int getPosition(int position) {
        return isInfiniteLoop ? position % size : position;
    }

    @Override
    public View getView(final int position, View view, ViewGroup container) {
        final ViewHolder holder;
        if (view == null) {
            holder = new ViewHolder();
            view = holder.imageView = new ImageView(context);
            holder.imageView
                    .setLayoutParams(new ViewGroup.LayoutParams(-1, -1));
            holder.imageView.setScaleType(ImageView.ScaleType.FIT_XY);
            view.setTag(holder);
        } else {
            holder = (ViewHolder) view.getTag();
        }

//        imageLoader.displayImage(
//                (String) this.imageIdList.get(getPosition(position)),
//                holder.imageView, options);
        holder.imageView.setImageResource(Integer.parseInt(this.imageIdList.get(getPosition(position))));

        holder.imageView.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View arg0) {
                String url = linkUrlArray.get(ImagePagerAdapter.this
                        .getPosition(position));
                String title = urlTitlesList.get(ImagePagerAdapter.this
                        .getPosition(position));
                /*
                 * if (TextUtils.isEmpty(url)) {
                 * holder.imageView.setEnabled(false); return; }
                 */
                Bundle bundle = new Bundle();

                bundle.putString("url", url);
                bundle.putString("title", title);
                Intent intent = new Intent(context, BaseWebActivity.class);
                intent.putExtras(bundle);

                context.startActivity(intent);
                Toast.makeText(context, title,
                        Toast.LENGTH_LONG).show();

            }
        });

        return view;
    }

    private static class ViewHolder {

        ImageView imageView;
    }

    /**
     * @return the isInfiniteLoop
     */
    public boolean isInfiniteLoop() {
        return isInfiniteLoop;
    }

    /**
     * @param isInfiniteLoop
     *            the isInfiniteLoop to set
     */
    public ImagePagerAdapter setInfiniteLoop(boolean isInfiniteLoop) {
        this.isInfiniteLoop = isInfiniteLoop;
        return this;
    }

    @Override
    public Object getItem(int arg0) {
        // TODO Auto-generated method stub
        return arg0;
    }

    @Override
    public long getItemId(int arg0) {
        // TODO Auto-generated method stub
        return arg0;
    }

}

 

 

package com.linlang.grasharepro.adapter;

import android.content.Context;
import android.graphics.Color;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;

import com.linlang.grasharepro.R;
import com.linlang.grasharepro.utils.ViewHolder;

import java.util.LinkedList;
import java.util.List;

public class MyAdapter extends CommonAdapter<String>
{

    /**
     * 用户选择的图片,存储为图片的完整路径
     */
    public static List<String> mSelectedImage = new LinkedList<String>();

    /**
     * 文件夹路径
     */
    private String mDirPath;

    public MyAdapter(Context context, List<String> mDatas, int itemLayoutId,
                     String dirPath)
    {
        super(context, mDatas, itemLayoutId);
        this.mDirPath = dirPath;
    }

    @Override
    public void convert(final ViewHolder helper, final String item)
    {
        //设置no_pic
        helper.setImageResource(R.id.id_item_image, R.drawable.pictures_no);
        //设置no_selected
                helper.setImageResource(R.id.id_item_select,
                        R.drawable.picture_unselected);
        //设置图片
        helper.setImageByUrl(R.id.id_item_image, mDirPath + "/" + item);
        
        final ImageView mImageView = helper.getView(R.id.id_item_image);
        final ImageView mSelect = helper.getView(R.id.id_item_select);
        
        mImageView.setColorFilter(null);
        //设置ImageView的点击事件
        mImageView.setOnClickListener(new OnClickListener()
        {
            //选择,则将图片变暗,反之则反之
            @Override
            public void onClick(View v)
            {

                // 已经选择过该图片
                if (mSelectedImage.contains(mDirPath + "/" + item))
                {
                    mSelectedImage.remove(mDirPath + "/" + item);
                    mSelect.setImageResource(R.drawable.picture_unselected);
                    mImageView.setColorFilter(null);
                } else
                // 未选择该图片
                {
                    mSelectedImage.add(mDirPath + "/" + item);
                    mSelect.setImageResource(R.drawable.pictures_selected);
                    mImageView.setColorFilter(Color.parseColor("#77000000"));
                }

            }
        });
        
        /**
         * 已经选择过的图片,显示出选择过的效果
         */
        if (mSelectedImage.contains(mDirPath + "/" + item))
        {
            mSelect.setImageResource(R.drawable.pictures_selected);
            mImageView.setColorFilter(Color.parseColor("#77000000"));
        }

    }
}

 

 

package com.linlang.grasharepro.adapter;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import com.linlang.grasharepro.R;
import com.linlang.grasharepro.dao.CollectionDB;
import com.linlang.grasharepro.dao.NewMessageDB;
import com.linlang.grasharepro.model.CollectionDomain;
import com.linlang.grasharepro.model.NewMessageDomain;
import com.linlang.grasharepro.model.ShareCoenten;
import com.linlang.grasharepro.model.ShareMessage;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

public class MyCollectAdapter extends BaseAdapter {

    private CollectionDB collectionDB;
    /**
     * 信息列表
     */
    private List<ShareCoenten> list;

    public List<ShareCoenten> getList() {
        return list;
    }

    public void setList(List<ShareCoenten> list) {
        this.list = list;
    }

    public Context getCtx() {
        return ctx;
    }

    public void setCtx(Context ctx) {
        this.ctx = ctx;
    }


    private Context ctx;


    public MyCollectAdapter(List<ShareCoenten> list, Context ctx) {
        this.list = list;
        this.ctx = ctx;
        // 实例化获取图片的类

    }

    @Override
    public int getCount() {
        return list.size();
    }

    @Override
    public Object getItem(int position) {
        return list.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        final Holder hold;
        if (convertView == null) {
            hold = new Holder();
            convertView = View.inflate(ctx, R.layout.item_collect, null);
            hold.tv_content = (TextView) convertView.findViewById(R.id.tv_content);//内容
            hold.tv_title = (TextView) convertView.findViewById(R.id.tv_title);//标题
            hold.tv_time = (TextView) convertView.findViewById(R.id.tv_time);//发布时间
            hold.iv_delete = (ImageView) convertView.findViewById(R.id.iv_delete);//
            convertView.setTag(hold);
        } else {
            hold = (Holder) convertView.getTag();
        }

        if (list != null && list.size() > 0) {
            final ShareCoenten smd = list.get(position);
            hold.tv_content.setText(smd.getContent());
            hold.tv_title.setText(smd.getTitle());
            hold.tv_time.setText(smd.getTime());

//            //点击删除按钮删除自己收藏的内容
//            hold.iv_delete.setOnClickListener(new View.OnClickListener() {
//                @Override
//                public void onClick(View v) {
//                    //获取用户登陆信息
//                    SharedPreferences preferences = ctx.getSharedPreferences("userInfo",
//                            Activity.MODE_PRIVATE);
//                    String account = preferences.getString("account", "");
//                    collectionDB = new CollectionDB(ctx);
//                    collectionDB.open();
//                    collectionDB.deleteByRelationId(smd.get_id(), account);
//                }
//            });
        }
        return convertView;
    }

    static class Holder {
        TextView tv_title, tv_content, tv_time;
        ImageView iv_delete;
    }
}

 

 

package com.linlang.grasharepro.adapter;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.linlang.grasharepro.R;
import com.linlang.grasharepro.dao.CollectionDB;
import com.linlang.grasharepro.model.ShareCoenten;
import com.linlang.grasharepro.model.User;

import java.util.List;

/**
 * 商家WIFI适配器
 */
public class MyFansAdapter extends BaseAdapter {

    /**
     * 商家信息列表
     */
    private List<User> list;

    public List<User> getList() {
        return list;
    }

    public void setList(List<User> list) {
        this.list = list;
    }

    public Context getCtx() {
        return ctx;
    }

    public void setCtx(Context ctx) {
        this.ctx = ctx;
    }


    private Context ctx;


    public MyFansAdapter(List<User> list, Context ctx) {
        this.list = list;
        this.ctx = ctx;
        // 实例化获取图片的类

    }

    @Override
    public int getCount() {
        return list.size();
    }

    @Override
    public Object getItem(int position) {
        return list.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        final Holder hold;
        if (convertView == null) {
            hold = new Holder();
            convertView = View.inflate(ctx, R.layout.item_fans, null);
            hold.tv_userName = (TextView) convertView.findViewById(R.id.tv_userName);//用户名
            hold.tv_introduction = (TextView) convertView.findViewById(R.id.tv_introduction);//简介
            convertView.setTag(hold);
        } else {
            hold = (Holder) convertView.getTag();
        }

        if (list != null && list.size() > 0) {
            final User user = list.get(position);
            hold.tv_userName.setText(user.getLoginName());
            hold.tv_introduction.setText(user.getIntroduction());

//            //点击删除按钮删除自己收藏的内容
//            hold.iv_delete.setOnClickListener(new View.OnClickListener() {
//                @Override
//                public void onClick(View v) {
//                    //获取用户登陆信息
//                    SharedPreferences preferences = ctx.getSharedPreferences("userInfo",
//                            Activity.MODE_PRIVATE);
//                    String account = preferences.getString("account", "");
//                    collectionDB = new CollectionDB(ctx);
//                    collectionDB.open();
//                    collectionDB.deleteByRelationId(smd.get_id(), account);
//                }
//            });
        }
        return convertView;
    }

    static class Holder {
        TextView tv_userName, tv_introduction, tv_time;
        ImageView iv_delete;
    }
}

 

 

package com.linlang.grasharepro.adapter;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.linlang.grasharepro.R;
import com.linlang.grasharepro.model.User;

import java.util.List;

/**
 * 商家WIFI适配器
 */
public class MyFollowAdapter extends BaseAdapter {

    /**
     * 商家信息列表
     */
    private List<User> list;

    public List<User> getList() {
        return list;
    }

    public void setList(List<User> list) {
        this.list = list;
    }

    public Context getCtx() {
        return ctx;
    }

    public void setCtx(Context ctx) {
        this.ctx = ctx;
    }


    private Context ctx;


    public MyFollowAdapter(List<User> list, Context ctx) {
        this.list = list;
        this.ctx = ctx;
        // 实例化获取图片的类

    }

    @Override
    public int getCount() {
        return list.size();
    }

    @Override
    public Object getItem(int position) {
        return list.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        final Holder hold;
        if (convertView == null) {
            hold = new Holder();
            convertView = View.inflate(ctx, R.layout.item_follow, null);
            hold.tv_userName = (TextView) convertView.findViewById(R.id.tv_userName);//用户名
            hold.tv_introduction = (TextView) convertView.findViewById(R.id.tv_introduction);//简介
            convertView.setTag(hold);
        } else {
            hold = (Holder) convertView.getTag();
        }

        if (list != null && list.size() > 0) {
            final User user = list.get(position);
            hold.tv_userName.setText(user.getLoginName());
            hold.tv_introduction.setText(user.getIntroduction());

//            //点击删除按钮删除自己收藏的内容
//            hold.iv_delete.setOnClickListener(new View.OnClickListener() {
//                @Override
//                public void onClick(View v) {
//                    //获取用户登陆信息
//                    SharedPreferences preferences = ctx.getSharedPreferences("userInfo",
//                            Activity.MODE_PRIVATE);
//                    String account = preferences.getString("account", "");
//                    collectionDB = new CollectionDB(ctx);
//                    collectionDB.open();
//                    collectionDB.deleteByRelationId(smd.get_id(), account);
//                }
//            });
        }
        return convertView;
    }

    static class Holder {
        TextView tv_userName, tv_introduction;
    }
}

 

 

package com.linlang.grasharepro.adapter;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.linlang.grasharepro.R;
import com.linlang.grasharepro.dao.CollectionDB;
import com.linlang.grasharepro.model.ShareCoenten;

import java.util.List;

/**
 * 商家WIFI适配器
 */
public class MyShareAdapter extends BaseAdapter {

    private CollectionDB collectionDB;
    /**
     * 商家信息列表
     */
    private List<ShareCoenten> list;

    public List<ShareCoenten> getList() {
        return list;
    }

    public void setList(List<ShareCoenten> list) {
        this.list = list;
    }

    public Context getCtx() {
        return ctx;
    }

    public void setCtx(Context ctx) {
        this.ctx = ctx;
    }


    private Context ctx;


    public MyShareAdapter(List<ShareCoenten> list, Context ctx) {
        this.list = list;
        this.ctx = ctx;
        // 实例化获取图片的类

    }

    @Override
    public int getCount() {
        return list.size();
    }

    @Override
    public Object getItem(int position) {
        return list.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        final Holder hold;
        if (convertView == null) {
            hold = new Holder();
            convertView = View.inflate(ctx, R.layout.item_sharecontent, null);
            hold.tv_content = (TextView) convertView.findViewById(R.id.tv_content);//内容
            hold.tv_title = (TextView) convertView.findViewById(R.id.tv_title);//标题
            hold.tv_time = (TextView) convertView.findViewById(R.id.tv_time);//发布时间
            hold.iv_delete = (ImageView) convertView.findViewById(R.id.iv_delete);//
            convertView.setTag(hold);
        } else {
            hold = (Holder) convertView.getTag();
        }

        if (list != null && list.size() > 0) {
            final ShareCoenten smd = list.get(position);
            hold.tv_content.setText(smd.getContent());
            hold.tv_title.setText(smd.getTitle());
            hold.tv_time.setText(smd.getTime());

//            //点击删除按钮删除自己收藏的内容
//            hold.iv_delete.setOnClickListener(new View.OnClickListener() {
//                @Override
//                public void onClick(View v) {
//                    //获取用户登陆信息
//                    SharedPreferences preferences = ctx.getSharedPreferences("userInfo",
//                            Activity.MODE_PRIVATE);
//                    String account = preferences.getString("account", "");
//                    collectionDB = new CollectionDB(ctx);
//                    collectionDB.open();
//                    collectionDB.deleteByRelationId(smd.get_id(), account);
//                }
//            });
        }
        return convertView;
    }

    static class Holder {
        TextView tv_title, tv_content, tv_time;
        ImageView iv_delete;
    }
}

 

 

明天继续写个人主页的数据库相关的文件

 

posted @ 2022-04-24 23:33  kuaiquxie  阅读(16)  评论(0编辑  收藏  举报