用信息填充表格

时间:2014-09-02 14:18:59

标签: c# ios uitableview xamarin

我想将arrayVariable1放在顶部,第二个放在下面。

我使用命令:

            public override UITableViewCell GetCell (UITableView tableView, NSIndexPath indexPath)
        {
            UITableViewCell cell = tableView.DequeueReusableCell (cellID);

            if (cell == null) {
                cell = new UITableViewCell (UITableViewCellStyle.Subtitle, cellID);
            }

            cell.TextLabel.Text = ArrayVariable1;
            cell.TextLabel.Text = ArrayVariable2;

            return cell;
        }

但如果我运行它,则不会出现变量1,只有2。

4 个答案:

答案 0 :(得分:2)

您在第二次分配给cell.TextLabel.Text

时会覆盖自己
cell.TextLabel.Text = ArrayVariable1;
cell.TextLabel.Text = ArrayVariable2;  <-- this overwrites the line above this.

一个非常简单的解决方案......

cell.TextLabel.Text = string.Format("{0} {1}", ArrayVariable1, ArrayVariable2);

但是如果你真的想要的不仅仅是连接,那么你必须为你的单元格创建一个自定义布局并使其膨胀。

答案 1 :(得分:0)

查看http://developer.xamarin.com/guides/ios/user_interface/tables/part_3_-_customizing_a_table&#39; s_appearance /

对于不同的表格类型以及使用标题,字幕等我认为这是您可能需要的,如果不是,您可以随时创建自己的单元格类型。

答案 2 :(得分:0)

您正在使用ArrayVariable2覆盖TextLabel。你用cell.TextLabel.Text = ArrayVariable1设置它然后用cell.TextLabel.Text = ArrayVariable2覆盖它。如果要将两个数组变量中的数据打包成标签(或更好的UITextView),那么你可以这样做:

cell.TextLabel.Text = [NSString stringWithFormat:@"%@\n%@", ArrayVariable1, ArrayVariable2];

您需要确保将标签设置为多行(即2行)

答案 3 :(得分:0)

样式UITableViewCell的{​​{1}}有两个不同的标签属性。 UITableViewCellStyle.Subtitle是上标签,TextLabel是下标签

DetailTextLabel