2

2つの標準ウィジェット(CheckBoxとCheckedTextView)を追加したとしましょう。最初のものは、私が何も設定しなかったという事実にもかかわらず、すてきで明確なパディングがあり、.xmlファイルにはパディングが設定されていません。もう1つは、パディングなしで提供されます。

これで、試行とエラーによってCheckBoxからパディングの値(固定)を取得できました。しかし、私の質問は、動的な方法で設定する方法です。つまり、Android 7.0でCheckBoxのパディングが「20sp」になり、「10sp」を設定した場合(現在は10spであるため、これを作成しています)、 2つのウィジェットは異なるパディングを使用します。

そして、私は一貫したパディングをしたいと思います。"?android/default_padding"では、パディングのようなものを設定するにはどうすればよいですか?

明確化:システムのデフォルトのパディングを使用することに興味があります。すべてのウィジェットで同じ値をハードコーディングするのではありません。

4

2 に答える 2

1

リソースにdimens.xmlというxmlファイルを作成し、次のようなものを追加できます。

<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="default_padding">10dp</dimen>
</resources>

次に、レイアウトから次のように呼び出します。

android:padding="@dimen/default_padding"

これは一貫した働き方だと思います:)幸運を祈ります!!!

于 2012-10-03T19:29:38.253 に答える
1

私はあなたのためにそれを調べました、APIレベル10(そして他のすべてのAndroidプラットフォームでも)Androidは事前定義されたパディング(セレクターで宣言されたパディングはありません)で9パッチ画像を使用します、例えば私はチェックボックスとそれをこのパディングとして測定しました:左、右:6dp; 上、下:12dp。また、デフォルトのボタンには10dpのパディングがあります。したがって、私が知る限り、デフォルトのパディングはありません。ただし、ほとんどの場合、10dpが適切です。また、実際にはデバイスの画面サイズによって異なります。ダニエルが提案したように、自分の好みのパディングを宣言する必要があります。例:Valuesファイルで10dpおよびvaluesで-おそらく15。

編集:Android2.3.3でのmdpiのデフォルトのチェックボックスは次のとおりです。

ここに画像の説明を入力してください

于 2012-10-03T19:53:23.553 に答える