2013-11-25 90 views
0

我有列表视图,其中每行可以有多个项目(相同类型但不同值)enter image description here。每个列表视图项目都有左右箭头。但我无法知道如何为每行添加多个值,以及如何在以后切换它们。在单个列表视图行中添加多个项目

这里是我的GET观点:

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    ViewHolder holder; 
    if(convertView==null){ 
     holder = new ViewHolder(); 

     convertView = inflater.inflate(R.layout.beer_list_item, parent,false); 
     holder.tv_brandTitle = (TextView)convertView.findViewById(R.id.tv_BrandName); 
     holder.tv_packSizeOption = (TextView)convertView.findViewById(R.id.tv_packSizeOption); 
     holder.img_manufacturerLogo = (ImageView)convertView.findViewById(R.id.img_brandBigLogo); 
     holder.img_canBeerLogo = (ImageView)convertView.findViewById(R.id.img_canBeerImg); 
     holder.tv_CanOrBottle = (TextView)convertView.findViewById(R.id.tv_CanOrBottle); 

     convertView.setTag(holder); 
    } 
    else { 
     holder = (ViewHolder) convertView.getTag(); 
    } 

    holder.tv_brandTitle.setText(findBeerDataList.get(position).getBrandName()); 

    int numOfProducts = findBeerDataList.get(position).getBeerProductList().size(); 
    holder.tv_CanOrBottle.setText(findBeerDataList.get(position).getBeerProductList().get(0).getCanOrBottle()); 

    if(findBeerDataList.get(position).getBeerProductList().get(0).getCanOrBottle().equalsIgnoreCase("can")){ 
     imageLoader.DisplayImage(findBeerDataList.get(position).getCanImage(), holder.img_canBeerLogo); 
    } 
    else{ 
     imageLoader.DisplayImage(findBeerDataList.get(position).getBottleImage(), holder.img_canBeerLogo); 

    } 

    imageLoader.DisplayImage(findBeerDataList.get(position).getBrandLogo(), holder.img_manufacturerLogo); 
    holder.tv_packSizeOption.setText(findBeerDataList.get(position).getBeerProductList().get(0).getPackOption()+"×"+findBeerDataList.get(position).getBeerProductList().get(0).getPackSize()+"ml"); 

    return convertView; 
} 

这里numofproducts是在列表行的看法大小。

请建议我一个很好的方式做同样的

+0

所以,你想有更多的项目彼此相邻? – Sajmon

+0

@Geralt是的,他们应该在箭头的帮助下移动,正如我在列表视图中显示的那样,上面显示的是 –

+0

@Geralt并且列表视图中可以有任意数量的项目。他们不是固定的,我希望他们在运行时添加 –

回答

0

只是做一个组合视图裹着即RelativeLayout和隐藏的一些看法与View.GONE。一旦按下箭头,您将揭开下一个视图并隐藏前一个视图。

+0

@Marcon在列表视图中可以有任何数量的项目。它们不是固定的,我希望它们在运行时添加 –

+0

您可以这样做,因为您可以修改没有任何问题的行视图。所以添加或删除项目不是问题。 –

+0

但如何更新它的单行,因为所有行中的箭头都是不同的。你能给我提供任何例子吗\ –

0

单击右箭头,将当前视图的内容替换为新的视图的内容,即下一项,然后单击左箭头将其替换为前一个。

+0

非常好,替换内容是我遇到的主要问题。我必须在列表视图适配器' –

+0

中看到我的代码结构和列表视图getView方法,然后replu –

+0

??你现在在哪里 ? –

相关问题