You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
1.4 KiB

package ru.defend.defdevteam.tstu;
import android.os.Build;
import android.util.Log;
import android.view.View;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
/**
* Created by itsmy on 13.02.2017.
*/
public class NewsItemList {
private HashMap<Integer, NewsItemGroup> hashMap;
NewsItemList() {
hashMap = new HashMap<>();
}
public NewsItemGroup[] toArray() {
int counter = 0;
NewsItemGroup[] array = new NewsItemGroup[size()];
for (Map.Entry<Integer, NewsItemGroup> entry: hashMap.entrySet()) {
array[counter] = entry.getValue();
counter++;
}
return array;
}
public int size() {
return hashMap.size();
}
public void add(NewsItemGroup group) {
int viewId = getViewId();
group.setViewID(viewId);
this.hashMap.put(viewId, group);
}
public int getViewId() {
int viewId;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
viewId = View.generateViewId();
Log.i("Generated view id", Integer.toString(viewId));
} else {
viewId = -1;
}
return viewId;
}
public void clear() {
this.hashMap.clear();
}
public NewsItemGroup getGroupByViewId(int viewId) {
return this.hashMap.get(viewId);
}
}