問題タブ [transitiondrawable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android TransitionDrawable: フラグメントの再開時に画像のスケールタイプが変更される
フラグメントの背景として ImageView を設定し (imageview は幅と高さの両方で match_parent に設定されています)、scaletype は centerCrop に設定されています。画像をダウンロードしてそこに非同期で配置し、ダウンロードが完了したら TransitionDrawable を使用してクロスフェードします。
画像は最初は正しいスケールタイプで表示されますが、別のフラグメントに移動してから、イメージビューを背景としてこのフラグメントに戻ると、画像がゆがんだり伸びたりして表示されます (代わりに imageView が fitXY に設定されているように見えます)。
TransitionDrawable を使用しない場合、画像は本来の外観のままです。
正しいアスペクト比を維持する TransitionDrawable に相当するものはありますか? または、このサイズ変更を防ぐために TransitionDrawable に設定する必要があるものはありますか?
私が本当にやりたいのは、画像間の素敵な移行です。アニメーションが終了したら、TransitionDrawable の 2 番目のレイヤーのドローアブルに画像を設定することを考えていましたが、アニメーションがいつ終了したかを監視する方法はありません...
編集:画像が同じ寸法ではないことに言及したいと思いましたが、それが違いを生むかどうかはわかりません
編集2:ドローアブルを設定するコードは次のとおりです。
android - ImageButton の背景のトランジション
強調したい ImageButton があります。ダウンロードが完了すると点滅します。
背景を aTransitionDrawable
に設定し、トランジションが終了したらリセットしようとしていますが、奇妙な結果が得られます。
- トランジションがアクティブになるとボタンのパディングが消え、終了時に元のドローアブルを復元しても復元されません。
- 遷移はボタンのストローク (境界線) でのみ発生し、背景の領域を塗りつぶすグラデーションでは発生しません。
これは、トランジションを有効にし、元に戻し、元の描画可能な背景を復元するために使用している Java コードです。
これは、レイアウト xml のボタンです。
これは、custom_button ドローアブルの xml です。
トランジション「animate_background」xml:
アニメーション開始 xml (アニメーション終了は非常に似ていますが、グラデーションとストロークの色が異なるだけです)
android - Android - TransitionDrawable をプログラムで適用する - 問題
ユーザーが別のオプションを選択したときに背景色を変更しようとしています。
そのために、実行時に TransitionDrawable を作成しています。その作品はうまくいきます。しかし、私の問題は、setDrawableBackground() を使用してビューの背景を変更したときです。画面ビューの半分がシェイプ ドローアブルによってオーバーライドされます。
これが私の TransitionDrawable コードです。
これは私の ShapeDrawble 作成コードです
色の遷移を適用するコードを以下に記述しました
私の問題を解決するのを手伝ってください...
前もって感謝します。
android - Android のアクションバーのトランジション ドローアブル
Actionbar にトランジション ドローアブルを使用することは可能ですか? 次のようなxmlを使用する必要があります。
しかし、ここからどのように続けるのですか?
android - ImageView ScaleType で TransitionDrawable を設定する
ImageView の背景をクロスフェードする次のコードがあります。
ImageViewはXML レイアウトで にscaleType
設定されます。centerCrop
ただし、クロスフェードが終了すると、新しいビットマップは に設定されfitXY
ます。他のスレッドでは、をリセットすることで解決できると言われていますがscaleType
、機能していません。ビットマップのサイズを変更することは、メモリの観点からは適切な解決策ではありません。これを実装するための回避策はありますか? どうもありがとうございました。
PS: 2 つの ImageView のクロスフェードや、ViewSwitcher の使用を提案しないでください。
android - TransitionAnimation をサポートする CircleImageView の代替手段はありますか?
私はImageViewを持っています。onPostExecute でビットマップをロードした後、setImageDrawable を呼び出して imageView (CircleImageView を使用) を画像で埋めます。ただし、 TransitionDrawable は最初の画像のみを表示し、トランザクションは実行されません。これを機能させるにはどうすればよいですか?前もって感謝します。
更新: CircleImageView のドキュメントで、それがうまくいかない理由を見つけました。)。
それで、フェードインアニメーションが適切に機能する円の画像を取得する方法を教えてもらえますか?
更新 2: 2 つの円の画像間のスムーズな移行を得るために私が見つけた回避策は、最初の画像をフェードアウトしてから、2 番目の画像をアニメーションでフェードインし、遅延ランナブルを投稿することです。コード例を次に示します。
フェードアウト.xml
fade_in.xmlは、fromAlpha と toAlpha を場所ごとに変更する以外はほとんど同じです。その後、次のように、これらのアニメーションを円の画像ビューに適用します。
それが役立つことを願っています。