window - Appcelerator Titanium,如何创建模态窗口?

标签 window modal-dialog titanium appcelerator

我刚接触钛制速效器,并有一个问题

我如何创建一个模糊其父窗口或具有半透明背景的模态窗口?我设法创建了一个模态窗口,但父窗口变黑了。

提前致谢

最佳答案

这是从iOS 3.1.3开始在Titanium中完成此操作的当前方法。

首先,创建一个新窗口。

var myModal = Ti.UI.createWindow({
    title           : 'My Modal',
    backgroundColor : 'transparent'
});

然后创建一个包装 View ,一个背景 View 和一个容器 View :
var wrapperView    = Ti.UI.createView(); // Full screen
var backgroundView = Ti.UI.createView({  // Also full screen
    backgroundColor : '#000',
    opacity         : 0.5
});
var containerView  = Ti.UI.createView({  // Set height appropriately
    height          : 300,
    backgroundColor : '#FFF'
});
var someLabel      = Ti.UI.createLabel({
    title : 'Here is your modal',
    top   : 40
});
var closeButton    = Ti.UI.createButton({
    title  : 'Close',
    bottom : 40
});
closeButton.addEventListener('click', function () {
    myModal.close();
});

现在构建您的UI堆栈。该顺序很重要,可以避免必须设置z-index。
containerView.add(someLabel);
containerView.add(closeButton);

wrapperView.add(backgroundView);
wrapperView.add(containerView);

myModal.add(wrapperView);

现在您可以打开模态,但不设置modal : true
myModal.open({
    animate : true
});

关于window - Appcelerator Titanium,如何创建模态窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6242682/

相关文章:

window - PyGTK 通过 slider 更改窗口不透明度

android - 如何开发Android应用程序?

javascript - jQuery UI 模式对话框覆盖淡出

javascript - Twitter Bootstrap 模式隐藏事件只触发一次

ios - 以前由于内存不足而未显示时,如何在 iPhone 上强制进行 View 渲染?

ember.js - 讨论 : How to proceed on implementing a mobile app based on Ember and Titanium?

android - 应用程序如何检测状态栏颜色(Android 5.0 Lollipop)?

fortran - MPI_Win_create 的基本 RMA 问题,当大小非零时,参数 NULL 基指针中的空指针无效

java - 如何使光标停留在窗口的某个区域

ios - 如何处理延迟登录?