1

ボタンがほとんどない LinearLayout を用意します。

最初は可視性が View.GONE に設定されていますが、ユーザーがクリックすると、可視性は VISIBLE に設定されます

これは、ボタンの幅の 1 つをプログラムで検出し、他のボタンの幅をそれに一致させる必要がある場所です。

への最初の呼び出し

public void onWindowFocusChanged(boolean hasFocus) 

このレイアウトは最初は表示されていないため、機能しません。

getMeasuredWdith() and getWidth()

可視性フラグが変更された後に呼び出されると、0 を返します。

このボタンの幅を取得するアイデアはありますか?

4

1 に答える 1

0

理解した。

最終的にxmlに戻りました。

  1. ボタンの各行には、独自の LinearLayout があります。
  2. すべてのボタン行を親 LinearLayout にラップしました。
  3. 親と先頭のボタン (他のボタンの幅を一致させる) を設定し、layout_width を "wrap_content" に設定します。
  4. 他のボタン行の layout_widths を「fill_parent」に設定します

終わり。

于 2013-08-01T00:51:42.817 に答える