3

カスタム ビューが動的に挿入されていますonDrawが、呼び出されていません。最初に動的挿入なしでカスタムビューを作成しましたが、正常に機能しましたが、それを作業中のコードベースに移動するとonDraw、ビューコンストラクターが呼び出され、onMeasureも呼び出されますが、呼び出されません。私はその場所に置いinvalidate()postInvalidate()呼び出してみましたが、ビューを強制的に描画するようには見えません。ビュー階層は両方のバージョンで同じように見え、迷っています。

誰でも助けることができますか?

編集: もう少しテストonDrawしたところ、エミュレーターで呼び出されていることが示されていますが、ハンドセットでは呼び出されていません。またonSizeChanged、ハンドセットでは正しい値が送信されますが、エミュレータでは値はすべて 0 です。

編集:私はそれで遊んでいますが、まだどこにも行けないので、賞金をかけました. さらにコード / xml / 情報が必要な場合は、お知らせください。

4

2 に答える 2

1

をに変更しViewましたが、なぜ機能しなかったのかTextView少し混乱していますが、今は機能しているようです。View

于 2010-12-07T19:51:24.663 に答える
1

これは、最初のカスタム ビューで最近発生した問題のように思えます。ビュー階層をロードするときに、カスタム ビューが表示されることに気付きましたか? とにかく、それらはワイヤーフレーム プレビューでレイアウトされて表示されますか?

後者の場合、それはrequestLayout()呼び出されません (ビュー階層をロードすると、すべてのビューでそれが呼び出されます - ビューが表示されるのはそのためです)。同様のバグがすでにここで報告されていることもわかりました。

于 2010-12-05T15:01:16.583 に答える