問題タブ [android-shapedrawable]

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.

0 投票する
1 に答える
2051 参照

android - シェイプ ドローアブルにアニメーション セットを適用する

次の描画可能な red_dot.xml があります。

およびアニメーション pulse.xml:

red_dot_animated などの XML ファイルのドローアブルにアニメーションを適用するにはどうすればよいですか? red_dot.xml がベクター ファイルの場合、次のことが可能になります (ただし、形状があるため、そうではありません)。

0 投票する
1 に答える
1638 参照

android - 形状の描画可能なストロークの部分的な重なりを防ぐ

stroke上の の部分的な重なりを防ぐ方法はありますかshape drawable。シェイプの境界でストロークを完全にオーバーラップさせることを好みます。

ここに私のxmlがあります

色.xml

そして、これが達成されたものです
サンプル画像

ご覧のとおり、ストロークはソリッド部分に 50% 重なっていますが、100% にしたいと考えています。

0 投票する
2 に答える
1441 参照

android - ソースから背景色/ドローアブルを変更する

次のようなシェイプ ドローアブルの背景色を使用する XML が多数あります。

私の形状の背景xmlは次のとおりです。

ここで、ユーザーに背景色を変更するオプションを提供する機能を追加したいと考えています。xml をロードするアクティビティに移動してそれを変更する代わりに、何らかの値に基づいてソース シェイプ ドローアブルを変更できる簡単な方法はありますか?

ありがとうございました。

0 投票する
2 に答える
3188 参照

java - XML形状の一部を切り取る

私は XML で四角形のビューを持っています:

私が欲しいのはそれを半分に切ることなので、結果は次のようになります: ここに画像の説明を入力

出来ますか?はいの場合、どうすればそれを達成できますか?

ノート:

1) 回転した白い四角形を追加することは解決策ではありません。青い形状の切り取られた領域を透明に保つ必要があります (その下にはさらにビュー レイヤーがあります)。

2) rect の左下隅が少し丸くなっています (上の画像では描き忘れていました)。

0 投票する
0 に答える
221 参照

android - カスタム ビューの ShapeDrawable animate alpha プロパティ

ドローアブルの単純なアルファ アニメーションに問題があります。以下に、問題を説明するテスト プロジェクトがあります。

ShapeDrawable を保持するクラス

}

カスタム ビュー

アクティビティ

}

animateDrawable で postnvalidate() を呼び出さないと、アニメーションはありません。他の例 (完全ではない) を見ると、シェイプ ドローアブルはアニメーターを使用してのみアニメーション化する必要があるようです。ビューで手動で postInvalidate() を呼び出す必要はありません...

それで、私の理解は正しいですか、ビュー全体を自分で無効にする必要がありますか? その場合、ビュー全体が「再描画」されるのでしょうか、それとも汚れた領域だけでしょうか?

ありがとう

0 投票する
1 に答える
2375 参照

android - Androidで破線の水平プログレスバーを取得するには?

添付に示すように、破線のプログレスバーを設計する必要があります。

ここに画像の説明を入力

これは私がこれまで行ってきたことです。通常のプログレスバーが 2 つの異なる色で表示されます。1 つは進行状況用、もう 1 つは別の進行状況用です。

そして bg_progress_bar_green はこちら

そして、これがプログレスバーを更新する方法です:

示されているようにバーの破線を取得するにはどうすればよいですか?