首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在类似iPhone的CellIdentifiers中重用Android行?

在类似iPhone的CellIdentifiers中重用Android行?
EN

Stack Overflow用户
提问于 2010-10-11 19:47:09
回答 1查看 1.5K关注 0票数 0

在iPhone上,你会看到类似这样的东西:

代码语言:javascript
运行
复制
static NSString *Celldentifier = @"Section1_Cell";
 UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier: CellIdentifier];

其中CellIdentifier被用来使特定类型信元的信元出队。因此,如果您在一个表视图中有多个分区,并且每个分区的单元遵循不同的设计,那么您可以根据它们的CellIdentifier来定义要出队的单元的“类型”。这样就避免了对需要绘制不同单元格的部分重用错误类型的单元格。

我想知道如何在Android上做到这一点。我知道您可以通过覆盖适配器的getView(...)来重用行。方法如下所示

代码语言:javascript
运行
复制
@Override
public View getView(int position, View convertView, ViewGroup parent){
 View row = convertView;
 CustomRowWrapper wrapper = null;
 if (row == null){
           // inflate your row layout and create a new row object from it
        }

但只有当你所有的细胞都完全相同时,这才能起作用。如果您想区分行类型,这是不够的,当滚动列表时,您可以看到正在重用“错误的”类型的行,而不是您的不同行集,因为没有任何东西可以告诉适配器重用哪种类型的行。

那么如何在Android上做到这一点有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2010-10-11 20:00:11

您可以通过执行以下操作来拥有多种类型的行:getViewTypeCount() getItemViewType()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3905872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档