2011-07-28 12 views
2

ウィンドウがすでに作成されている場合は、プログラムによってウィンドウの背景を透明に設定する必要があります。チタン製デスクトップアプリケーションで透過ウィンドウの背景を設定する

これは、透明な背景で新しいウィンドウを作成します。

Titanium.UI.createWindow({url:location.href,transparentBackground:true}).open() 

背景の透明性もtiapp.xmlに設定することができますが、ウィンドウがロードされた後、私はそれをを設定する必要があります。

は、私はまた、任意の効果はありません、以下

var win = Titanium.UI.getCurrentWindow(); 
win.backgroundColor = 'transparent'; 

...

それを実現する方法はありますを試してみましたか?

+0

ウィンドウフォーカスイベントで背景を設定しようとしましたか? –

答えて

1

おそらく、同じコンポーネントを持つ2つのウィンドウを作成できます.1つは透明で、もう1つは透明ではありません。透明な背景を他のウィンドウを閉じて表示したい場合は、

or win.setBackgroundColor('transparent');

0

私は、クリックイベントにコードを貼り付け、それが私のためにうまく働きました。私がしたのは、テスト目的のためにURLを 'app://index.html'に変更することでした。

$('.button').click(function(){  
    // test 
    Titanium.UI.createWindow({url:'app://index.html',transparentBackground:true}).open(); 
}); 

jsエラーをチェックするためにWebインスペクタを開いたことがありますか?あなたが最初のウィンドウを透明にしたい場合は

+0

透明なウィンドウを作成しても問題ありません。問題は、作成したウィンドウを透過的に設定することです。バックグラウンドを透明にしたいウィンドウは、Titaniumがtiapp.xmlから作成する最初のウィンドウです – jfoucher

0

、tiapp.xmlファイルにこの

<transparent-background>false</transparent-background> 

<window /> 

にを追加します。

関連する問題