1
wxr
2023-04-23 2cd55265ccff3b0a267d7953b2dd9e5dca437aa6
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
/* 
 * @ProjectName VideoGoJar
 * @Copyright null
 * 
 * @FileName CameraListAdapter.java
 * @Description 这里对文件进行描述
 * 
 * @author chenxingyf1
 * @data 2014-7-14
 * 
 * @note 这里写本文件的详细功能描述和注释
 * @note 历史记录
 * 
 * @warning 这里写本文件的相关警告
 */
package com.videogo.ui.ddns;
 
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import com.videogo.openapi.bean.EZHiddnsDeviceInfo;
import ezviz.ezopensdk.R;
import java.util.ArrayList;
import java.util.List;
 
public class EZDDNSListAdapter extends BaseAdapter {
    private static final String TAG = "CameraListAdapter";
 
    private Context mContext = null;
    private List<EZHiddnsDeviceInfo> mCameraInfoList = null;
 
 
    private OnItemClickListener mOnItemClickListener;
    public void setOnItemClickListener(OnItemClickListener l) {
        mOnItemClickListener = l;
    }
 
 
    interface OnItemClickListener {
 
        void onItemClick(int position);
    }
    public void clearAll(){
        mCameraInfoList.clear();
        notifyDataSetChanged();
    }
 
    public List<EZHiddnsDeviceInfo> getDeviceInfoList() {
        return mCameraInfoList;
    }
 
 
    public static class ViewHolder {
 
 
        public TextView mDeviceSerialTextView;
        private TextView mDeviceIpTextView;
 
    }
 
    public EZDDNSListAdapter(Context context) {
        mContext = context;
        mCameraInfoList = new ArrayList<EZHiddnsDeviceInfo>();
    }
 
    
    public void addItem(EZHiddnsDeviceInfo item) {
        mCameraInfoList.add(item);
    }
 
    public void removeItem(EZHiddnsDeviceInfo item) {
        for(int i = 0; i < mCameraInfoList.size(); i++) {
            if(item == mCameraInfoList.get(i)) {
                mCameraInfoList.remove(i);
            }
        }
    }
    
    public void clearItem() {
        //mExecuteItemMap.clear();
        mCameraInfoList.clear();
    }
    
    /* (non-Javadoc)
     * @see android.widget.Adapter#getCount()
     */
    @Override
    public int getCount() {
        return mCameraInfoList.size();
    }
 
    /* (non-Javadoc)
     * @see android.widget.Adapter#getItem(int)
     */
    @Override
    public EZHiddnsDeviceInfo getItem(int position) {
        EZHiddnsDeviceInfo item = null;
        if (position >= 0 && getCount() > position) {
            item = mCameraInfoList.get(position);
        }
        return item;
    }
 
    /* (non-Javadoc)
     * @see android.widget.Adapter#getItemId(int)
     */
    @Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
    }
 
    /* (non-Javadoc)
     * @see android.widget.Adapter#getView(int, android.view.View, android.view.ViewGroup)
     */
    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        // 自定义视图
        ViewHolder viewHolder = null;
        if (convertView == null) {
            viewHolder = new ViewHolder();
            // 获取list_item布局文件的视图
            convertView = LayoutInflater.from(mContext).inflate(R.layout.ddns_device_list_item, null);
            viewHolder.mDeviceSerialTextView = (TextView) convertView.findViewById(R.id.text_serial);
            viewHolder.mDeviceIpTextView = (TextView) convertView.findViewById(R.id.text_device_ip);
            // 设置控件集到convertView
            convertView.setTag(viewHolder);
            convertView.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    if (mOnItemClickListener != null) {
                        mOnItemClickListener.onItemClick(position);
                    }
                }
            });
        } else {
            viewHolder = (ViewHolder) convertView.getTag();
        }
        EZHiddnsDeviceInfo ezHiddnsDeviceInfo = mCameraInfoList.get(position);
        viewHolder.mDeviceSerialTextView.setText(ezHiddnsDeviceInfo.getSubSerial());
        viewHolder.mDeviceIpTextView.setText(ezHiddnsDeviceInfo.getDeviceIp());
        return convertView;
    }
}