問題タブ [android-drawable]

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 投票する
2 に答える
608 参照

android - Android:すべてのピクセル密度に単一の画像リソースを使用するにはどうすればよいですか?

ビューの1つの背景パターンとして使用したい画像があります。パターンとして、タイル化されるため、解像度に依存しません。デバイスのピクセル密度に関係なく、画像内の1つのピクセルを画面上に1つのピクセルとして表示し、スケーリングは行わないようにします。

これで、イメージの4つの同一のコピーを作成し、それらをmdpi、ldpi、hdpi、およびxhdpiディレクトリにドロップすることで確実に実行できます。しかし、それは冗長で肥大化したようです。いずれの場合も、1つのイメージをそのまま使用するようにSDKに指示する方法はありますか?

ありがとう。

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

android - ボタンで選択した状態を呼び出すと、テキストが消えます

ボタンにsetSelected(true)を設定できるように、状態が選択された単純なセレクターがあり、選択されていることが示されます。ActionBarタイプのようなものを作成しています。一部のAndroidデバイス(nexusタブレット)(v4.1.2)ではうまく機能しますが、Samsung Galaxy S2(v2.3.6)では、setSeletcted(true)状態を呼び出すとボタンのテキストが非表示になります。なぜこれが起こっているのか誰もが知っていますか?

私の*button_tab_selected*と*button_tab*png画像リソースは両方とも47x479パッチです。

drawable_tabcontrolbutton.xml

レイアウトコード

Javaコード

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

android - Androidのデフォルトのスピナーリストの選択色がランダムに変化する

Androidにドロップダウンリストを実装しようとしています。

これがSpinner私のlayout.xmlで使用しているものです

MainActivity.java、私は次のコードを使用しています、

これが私のspinner_layout.xmlです

Selector_text_color.xml

セレクター_background.xml

ただし、スピナーリストのアイテム選択の色が変更される場合があります。 ここに画像の説明を入力してください ここに画像の説明を入力してください

いつ正しく表示されるかわかりません。ランダムに選択色が変更されています。選択範囲が1番目の画像として表示されることもあれば、2番目の画像として表示されることもあります。

なぜこれが起こるのでしょうか?これを解決する方法は?

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

android - Google マップでマーカー アイコンとして使用されるドローアブルの回転

現在、ドローアブルからマップ(api v2)にマーカーを追加したいのですが、次のようにします:

マーカーアイコンとして使用する前に、ドローアブルを回転させたいと思います。それを行う最良の方法は何ですか?私は試した

しかし、結果のドローアブルは奇妙に変形しています。より良い、よりクリーンなソリューションが必要だと思います。

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

android - Shape Drawable gradientRadius はピクセル単位でのみ機能します。これ無駄じゃない?% 値が機能しない

ビューの背景として、放射状のグラデーションでシェイプ ドローアブルを使用したいと考えています。javadoc によると、グラデーションの半径は特定の値 (おそらくピクセル) またはパーセントとして設定できます。

アンドロイド:gradientRadius

放射状グラデーションでのみ使用されるグラデーションの半径。

「1.2」などの浮動小数点値の場合があります。

"14.5%" のように、% または %p のいずれかが追加された浮動小数点数である小数値の場合があります。% サフィックスは、常に基本サイズのパーセンテージを意味します。オプションの %p サフィックスは、一部の親コンテナーに相対的なサイズを提供します。

間違っている場合は訂正してください。ただし、ここでピクセル値を使用しても、このグラデーションは画面密度によってまったく異なるように見えるため、まったく役に立ちません (テスト済みで、これは本当です)。% と %p の値を使用しようとしましたが、まったく機能しませんでした。

Android ソース コードを詳しく調べて、gradientRadius がどのように処理されているかを確認したところ、GradientDrawable クラスで次のことがわかりました。

あはは!したがって、 % または %p を追加すると、値が 100 で除算されます ( TypeValue.getFraction() のドキュメントがさらに不明確であるため、これをテストしました)。65% が 0.65 になりました。理にかなっていますが、有用な目的には役立ちません。

では、gradientRadius を使用する最良の方法は何ですか?

PS。GradientDrawable を使用してプログラムで背景を追加しましたが、目的の結果が得られています。ビューの幅に相対的な値で GradientDrawable.setGradientRadius() を使用し、デバイス間で一貫したグラデーションを取得しました。

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

android - これらのわずかに異なる状態のドローアブルとの動作の違いはありますか?

Q1)描画可能な元のListView状態を見ると、listSelector次のようなものがあります(例を簡略化するためにいくつかのコードを削除しました):

しかし、私は自分のアプリで次のようにしています。

これは同じ結果をもたらすようで、はるかに簡単です。最初のものが私自身のバージョンよりもうまくいく状況に気づきましたか?コードをできるだけ短くするために、何か重要なことを見逃していないことを確認したいだけです...

Q2)州のドローアブルが<item android:drawable="<TRANSPARENT>" android:state_window_focused="false"/>一番上にあるのですが、なぜ必要なのかわかりません。いつも少し戸惑いましたstate_window_focused…本当に必要ですか?

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

android - Android は ldpi 修飾子を尊重しません

次の 2 つのデバイスのレイアウト/ドローアブルを区別したい:

したがって、次の修飾されたディレクトリを使用しています。

しかし、画面サイズがピクセル 480x764 の 7 インチ ldpi デバイスで実行すると、Android (V4.0.3) は hdpi バージョンを選択します。なぜでしょうか? ドキュメントを読むと、ldpi の方が適しているはずです。

layout-sw600dp-hdpi / drawable-sw600dp-hdpi を完全に削除すると、2) が選択され、すべて問題ありません。しかし、hdpi バージョンも必要です。

では、どうすれば 7 インチ デバイスの ldpi/hpdi バージョンを区別できますか?

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

アンドレイ

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

android - AndroidsetBackgroundResourceがメモリ不足を引き起こします

私はViewPagerに12のビューを表示するゲームブックアプリケーションに取り組んでいます。これは私のカスタムPagerAdapterです:

一部のデバイスでは、このコード行が呼び出されると、メモリ不足の例外がランダムに発生します。

しかし、すべてのデバイスで、ページをめくるとlogcatに次のようなものが表示されます。

別のアクティビティでユーザーアクションに基づいてメインレイアウトに異なるバックグラウンドリソースを設定すると、同じ問題でアプリが一部のデバイスでクラッシュします。ここにコードがあります:

mainLayoutでsetBackgroundResource()を呼び出すと、excepitonが再度実行されます。

よろしくお願いします。