为Titanium Mobile TableView创建叠加层

时间:2011-04-18 12:50:52

标签: mobile datepicker overlay titanium tableview

我正在尝试创建一个在TableView上滑动的DatePicker,以便编辑日期字段。问题是DatePicker出现在TableView后面 - 你可以看到它的一部分,因为TableView是透明的。

enter image description here

我试过给一个比另一个更高的zIndex值,两种方式,但这没有帮助。 datepicker是视图中的一个选择器控件,我用动画向上滑动。

如何使用不同的视图覆盖TableView?

编辑:由于其中的各种类型的数据,表格非常复杂,因此复制和粘贴将是过度的。但这是相关部分:

var win = Ti.UI.createWindow();
var table = Ti.UI.createTableView({zIndex: 1});

// some table sections are added here

// create picker layer
var row = Ti.UI.createTableViewRow({zIndex: 2});
var picker_view = Titanium.UI.createView({
  height: 251,
  bottom: -251,
  zIndex: 3,
  visible: false
  });

var picker = Ti.UI.createPicker({
  type: Ti.UI.PICKER_TYPE_DATE,
  selectionIndicator: true
  });
picker_view.add(picker);

row.addEventListener('click', function()
  {
  picker_view.visible = true;
  var slide_in = Titanium.UI.createAnimation({bottom:0});
  picker_view.animate(slide_in);
  });

row.add(picker_view);

some_section.add(row);
win.add(table);

谢谢!

2 个答案:

答案 0 :(得分:3)

尝试在不在表格中的窗口中添加选择器。

答案 1 :(得分:2)

不要将视图添加到行中,将其添加到窗口中。

不要在视图上设置可见性,因为你上下滑动它是无关紧要的。

你也真的对zIndexes感到困惑,在这个用例中并不是真的需要它们。