いくつかのボタンがあるlayoutPanelと、さらにいくつかのボタンがある2番目のレイアウトパネルがあります。2 つのレイアウト パネルの位置が部分的に重なっています。表示されている要素/ウィジェットをクリックできるように、一方を非表示にしてもう一方を表示できるようにしたいと考えています。これを効率的に行うにはどうすればよいですか?このページはモバイル デバイスで表示されることが想定されているため、このようなボタンやパネルが多数あるため、効率が重要です。
setVisible()
まず、非表示にする必要があるパネルのビルトインを使用してみました。残念ながら、これはトップパネルを隠すだけです。上部パネルのボタンはアクティブにできなくなりましたが、上部パネルでは下部パネルをクリックできません。
次に、パネルwidget.getElement().getStyle().setZIndex(indexInt)
の と一緒にz-index を使用してみました。setVisible(false)
ここでは、パネルの z-index のみが変更されていますが、ボタンは変更されていません。繰り返しますが、下部パネルはクリックできなくなります。z-index 設定を子に渡しますが、これにより多くの z-index 再計算が発生するため、パフォーマンスへの影響は避けたいと考えています。
最後に、パネルのサイズ変更/移動を検討しました。邪魔にならないように。ここでの問題は、パネルがどこにあったか、またはどのサイズであったかをパネルに記憶させる必要があることです。また、パネルのサイズを変更したり移動したりするだけでも、目に見えない結果が生じる可能性があります。
最後の 2 つの方法は機能しますが、より効率的で洗練された方法があると思います。助言がありますか?どうもありがとう!