我想什么:刷卡/(弗林)与动态视图
我想添加一个刷卡或我所学到它的命名在Android上一扔,我的应用程序。 我有一个动态的视图数量,数量是从我解析的ICS文件的日期数量,我想在所有这些视图上一起滑动效果。 但是,如果我有12个这样的每个都有8个项目(最大)的ListView它会使用大量的内存我猜。所以我希望只有当前选定的视图前2和初始化2后。
我曾尝试:
我在寻找我stumpled各地this stackoverflow question其中提到HorizontalPager。但我不知道如何使它与一些ListView的工作,并动态加载它们。
我尝试了一个ViewGroup,然后添加和删除一个ListView,但它不工作,这显示是在一个ViewGroup而不是ListView控件
public class HourView extends ViewGroup
{
private ListView listView;
/**
* @param context
*/
public HourView(Context context)
{
super(context);
init(false);
}
/**
*
* @param context
* @param day the current day
*/
public HourView(Context context, String day,
boolean shouldBeVisible)
{
super(context);
this.day = day;
init(shouldBeVisible);
}
private void init(boolean shouldBeVisible)
{
if (shouldBeVisible)
{
listView = new ListView(getContext());
if (day == null)
{
day = Event.dtFormatDay.format(new Date());
}
new GetEvents(day).execute();
addView(listView);
}
else
{
removeAllViews();
listView = null;
}
}
}
的GetEvents()是的AsyncTask(在一个ViewGroup类中的一类)这得到了一些事件,从本地数据库,代码是onPostExecute如下
protected void onPostExecute(String errMsg)
{
if (errMsg != null)
{
listView.setAdapter(new SkemaHoursRowAdapter(getContext(), eventItems));
listView.requestLayout();
addView(listView, layoutParams);
}
}
eventItems是一个数组我分析我的自定义rowadapter(我知道的作品)。显示视图组,但listView不是。
有什么建议?