非常に頻繁に変化する値を表示するグリッドを作成しています。このため、コンテンツが変更されたときに自動サイズ変更するTextViewを使用しています(Auto Scale TextView Text to Fit within Bounds)。サイズ変更が行われますが、私はしたいと私はHierarchyViewerレイアウト・ディスプレイを持つ活性を調べる際にビューが正しくリサイズ後のビューのレイアウト
事がある、レイアウトしません。
私の推測では、HierarchyViewerが起動しますrequestLayout()またはビューに()無効、私はいない成功を収めていることを試みたということです。このコードは、メインアクティビティで呼び出され、何の効果もありません。
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
getWindow().getDecorView().requestLayout();
getWindow().getDecorView().invalidate();
}
}, 5000);
また、サイズ変更後にビューを無効にしてみました。
TextViewの重力はCenterに設定されています。サイズ変更が行われない場合は、OKと表示されます。
ヒントは、事前に感謝の意を表します。
デコレーションビューではなく親ビューでレイアウトをリクエストしようとしましたか? – DeeV
デコレーションビューがビューツリーの親ノードではありませんか?ビューのレイアウトをリクエストすると、そのすべての子がレイアウトをリクエストするようになります。とにかく、私はたくさんのことを試してみたが、私はあなたの提案を試してみると、私はそれを試みたと言いたい。 requestLayoutドキュメントをview.Viewで引用すると、 "このビューのレイアウトを無効にしたものが変更されたときにこれを呼び出すと、ビューツリーのレイアウトパスがスケジュールされます。 – Maragues
それはしますが、私はあなたのコードに間違って何かを見ることができません。 requestLayout()は親ビューと子のレイアウトをレイアウトしますが、私は自分のアプリケーションによって直接制御されるビューでのみ呼び出すので、単なる考えです。 – DeeV