2017-05-04 14 views
1

私のアプリ(Android、iOS)をDelphi 10 SeattleからDelphi 10.2 Tokyoにアップデートしています。 私は透明性を使用するいくつかのフォームを持っています。私はこれを使って透明なフォームの下のバックグラウンドに以前のフォームの一部を表示している画面のような小さな ポップアップを作成します。Delphi 10.2 Fire monkeyマルチデバイスプロジェクトに東京のトランスパランフォームが表示されない

私の問題は、透過性プロパティがTrueに設定されているフォームがまったく表示されないことです。透明なフォームを呼び出す元のフォームがその上にあるようです。

Windowsではフォームが正常に動作していて、iOSではいくつかのコンポーネント( )が表示され、サイズの違いや配置に間違いがあります。

どうすればこの問題を解決できますか?以下

コードサンプル:

procedure TForm1.Button1Click(Sender: TObject); 
var 
    FrmTransParentForm: TFrmTransParentForm; 
begin 
    inherited; 
    FrmTransParentForm := TFrmTransParentForm.Create(nil); 
    FrmTransParentForm.Show; 
end; 

procedure TFrmTransParentForm.Button1Click(Sender: TObject); 
begin 
    Close; 
end; 

procedure TFrmTransParentForm.FormClose(Sender: TObject; var Action: TCloseAction); 
begin 
    Action := TCloseAction.caFree; 
end; 

TFrmTransParentFormフォームが画面の中央 およびtrueに設定フォームプロパティの透明性と整合のみボタンと普通形です。

+0

フォームを表示するためのコードを表示すると、質問が改善されます。 –

+0

問題はAndroidやiOS、またはWindowsなどでのみ表示されますか?また、新しいアプリやアップグレードしたアプリだけでも問題が表示されますか? –

+0

@TomBrunberg Windowsでそれは正常に動作します、Androidで私はフォームやコンポーネントが全く表示されず、iOSではいくつかのコンポーネントが表示されます。 iOSの一部のコンポーネントのサイズも正しくありません。 – Remi

答えて

0

私は同じ問題があります。 メッセージ(showmessageスタイル)を表示するために、ラベルとOKボタン付きの専用フォームを作成しました。 このフォームは、アプリケーションを開くと自動的に作成されます。 「ショー」の後で、アクティブになっているときに表示されない、つまり、下のすべてのフィールドにアクセスできなくなった場合や、「戻る」ボタンの電話を押すと、フィールドが再びアクティブになります。 すべては、それが単なるディスプレイの問題であることを示唆しています。 OnShowでは、BringToFrontを指定しようとしましたが、FormStyleプロパティをStayOnTopに設定しました。

私はこれがメモリ問題であるという印象を持っています。なぜなら、モバイル上のすべてのアプリケーションを閉じるかリブートすると、メッセージがうまく表示されるからです。

この現象は、いくつかのモバイルブランドで発生します。 ありがとう フランク

関連する問題