問題タブ [porter-duff]
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 - ボタンの背景の描画可能な色をプログラムで設定する
長方形の形状であるが完全に透明なドローアブルを事前に作成しました。ここで、このドローアブルをコードでボタンに割り当てたいと思いますが、このドローアブルの色を透明からオレンジなどの特定の色に設定したいと思います。
私はすでに次のような他の投稿を使用して同じ設定を試みました-
しかし、うまくいきません。アクティビティがボタンをレンダリングするとき、それはまだ透明です。
また、ドローアブルをボタンに割り当てる前に、mDrawable.setAlpha を 255 (完全に不透明) に明示的に設定しようとしましたが、それでも機能しません。
誰かがこれを他の方法で機能させている場合は、提案してください。
android - ViewGroup の黒い四角形 PorterDuff.Mode.CLEAR
(ViewGroup経由で)水平にスクロールできるビューを作成しました。左側には、行の画像 (タイトルのようなもの) があります。ビューを左にスクロールすると、項目が行のタイトルの下に移動します。タイトルの背景が透明になっているため、このタイトルの下にアイテムが表示されます。タイトルの下にある項目の一部を削除したい。タイトルを描画する前に、drawChild メソッド内で PorterDuff.Mode.CLEAR を使用して Paint を介して四角形を描画しようとしました。その結果、タイトルの下に黒い長方形ができました。同じ質問をいくつか見つけましたが、他のコンテキストでは:
https://code.google.com/p/android/issues/detail?id=54105#c1
Android Paint PorterDuff.Mode.CLEAR が私のビューに黒い色を描く
しかし、この問題の解決策は見つかりませんでした。私が理解しているように、PorterDuff.Mode.CLEAR を使用する前に、他のビットマップを描画する必要があります。私の場合、これはできません。ビューでいくつかの四角形を消去(私の場合は透明にする)できますか?
編集:
また、このメソッドをどこかで見ましたが、レイアウトはまったく変更されませんでした:
編集2。saveLayer を試しました:
編集3
左、右、上下にスクロールできるビューがあります。このビューには、上部と左側に 2 種類のヘッダーが含まれており、サイズが異なる項目があります。このすべてのアイテムをビューに追加すると、最初にアイテムを追加してからヘッダーを追加します。この場合、ヘッダーは常にアイテムの前に描画されます。ユーザーが左/上にスクロールすると、アイテムは左/上に移動しますが、ヘッダーはその位置にとどまり、このアイテムはヘッダーの下になります。ヘッダーの背景があったときは問題ありませんでした。ヘッダーの下に項目が表示されなかったからです。しかし、今は背景がなく、ヘッダーの下に項目が表示されます。そのため、drawChild(すべてのアイテムを呼び出す)を使用して、ヘッダーの下にあるアイテムの一部を消去しようとしました。しかし、私が使用する場合
すべてのアイテムに使用する必要があります。drawChild の私のコード
android - dispatchDraw で Android ViewGroup の子の色を入れ替える
下にある子ビューをうまく表示するパスでアニメーション化した流動的な塗りつぶし効果を持つはずの ViewGroup (具体的には FrameLayout) があります。
問題は、液体の塗りつぶし線の上で、ビューの 2 色を反転させて子供たちに見せる必要があることです。(Black<->White) ビットマップを単純に繰り返し処理しないと、これを達成する方法がわかりません。これは、エイリアシングが多く、レンダリングが遅すぎる非常に貧弱なコピーを提供します。
これは、dispatchDraw の現在の機能の煮詰めたバージョンです。
無数の異なる ColorFilters と Transfer Modes を試しましたが、役に立ちませんでした。また、子供たちは、私がより単純な色の置換を行うために背景を透明のままにすることはできません。
android - Android: 円形のドローアブル
Drawable を円形にクリップするこのカスタム Drawable を作成しました。しかし、私の実装では、渡されたドローアブルは、循環形式ではなく元の形式で出力されます。
私の間違いは何ですか?
また、SquareImageview を使用して、onMeasure でビューを正方形にするこのドローアブルを表示しています。この質問は、円形のイメージビューを対象としたものではありません。
android - PorterDuffColorFilter を使用してビットマップをさまざまな色にフィルター処理する
次の画像があります。
ここで、実行時にこの画像をさまざまな色にフィルター処理したいと思います。たとえば、下の部分が濃い緑で、左上の部分が明るい緑である緑のバージョンを生成できるようにしたいと考えています。
これどうやってするの?これは可能ですか?
次のようにビットマップをフィルタリングしてみました。
すべてのを試しPorterDuff.Mode
ましたが、どれも実際には機能しません。ときどき (例: SRC_IN) 円が完全に新しい色で塗りつぶされ、陰影がまったくないことがあります。それ以外の場合は、正方形が表示されます。
色自体を持たないソース イメージを生成し、そのシェーディングをアルファ チャネルでレンダリングすることを考えました。しかし、それがうまくいくかどうかはわかりません。結果の画像を完全に不透明にしたい(上に表示されている外側の影を除く)。
android - Android 中央に円形の穴をあける切り抜き画像
私はアンドロイド脳のアイデアのために再び来ます!
ビットマップがcenterCropとしてスケーリングされているimageViewに円の穴を入れたいと思います。円の穴 (左と下からの dp) と穴の半径を配置する必要がある場所を知っています。でも作り方がわからない!
Porterduff を使用して穴を開けられることはわかっていますが、何をすればよいでしょうか?
- カスタム ビットマップ
- カスタム ドローアブル/ビュー
- カスタムコード
ありがとう
回答に続いて、穴のある私の CustomImage があります:
これらの行を使用してプログラムで呼び出しました:
しかし、onDraw()
メソッドは2回呼び出されます(おそらく必要です)が、これにより2つの穴ができます。1つはパラメーターを変更できますが、もう1つは同じ場所にあります。のコンテナMyImageView
はRelativeLayout
.
誰かがアイデアを持っている場合は?@tiny-sunlight ?
android - 選択したタブアイコンの色を変更するAndroid TabLayoutは、薄暗い白色を示しています
Android デザイン ライブラリのイメージでタブ レイアウトを使用しました。選択したタブ アイコンの色を白に変更すると、白が完全に表示されず、薄い白に表示されます。選択したタブに完全な白色を表示するには?