2009-09-01 17 views
15

アンドロイドEditTextをデフォルトの高さよりも小さくするにはどうすればいいですか?アンドロイドEditTextをデフォルトの高さよりも小さくするにはどうすればいいですか?

高さを変更した場合、テキストは表示されませんが、下部に余分な空白があります。

+1

は 'この質問は、右ええ、将来visitors'を手助けすることはほとんどありません! 40万以上の訪問があります。 –

+0

近い理由は間違いありませんが、依然として私は何が望ましい行動であり、何が現在の行動であるか、スクリーンショットの例を見たいと思います。たぶん、何年にもわたって質問をするための基準が改善されています。 – Trilarion

答えて

24

EditTextには、デフォルトのパディングセットがあります。

この参照、さらに参考のため

<EditText 
    android:text="Any Text" 
    android:layout_width="fill_parent" 
    android:layout_height="16dp" 
    android:padding="2dp" 
    android:background="#FFF" 
    android:textSize="10dp" 
/> 
+1

これは実際にはedittextを小さくしますが、クリックすると中央にオレンジ色の線が現れます。 – Jacky

+0

@Jacky:バックグラウンドを追加することで処理できます。 属性で試してください:android:background = "#FFF" ベスト:すべての状態(フォーカスなど)を扱うことができるバックグラウンドのXMLベースのドロウアブルを指定してください – bhatt4982

+1

これはむしろハッキングされているようです。 1つは、dpではなく、sp測定を使ってtextSizeを設定する必要があります。 –

3

明示的に高さを設定するオプションはありますか?

そうならば、あなたはXMLでandroid:textSizeを使用して、フォントサイズを小さくすることができます

<EditText 
    android:id="@+id/smallEditText" 
    android:layout_width="wrap_content" 
    android:layout_height="10dip"/> 

のようなものを使用。コントロールをスクロール可能にすることもできます。

編集:あなたのスクリーンショットを見ただけで、あなたはEditTextを置いたレイアウトは何ですか?それはあなたのコントロールのための非明示的レイアウトルールを設定しているかもしれません。

+0

私はLinerLayoutを使用して実際に私のテキストフォントを小さくしても問題は解決しません – Jacky

10

使用

android:textAppearance="?android:attr/textAppearanceSmallInverse" 

、これを試してみてください:彼らは組み合わせたときけれども、私はそこの答えのいずれかに本当に満足していなかったhttp://developer.android.com/guide/topics/ui/themes.html

7

をほとんどすべての成分が適切なソリューションに含まれています。しかし、最初に問題が何かを特定しましょう。問題は、bhatt4982がパディングを記述し、彼がその解決策を提供したためです。あなたが望むものにパディングを設定します。あなたも小さいフォントを使用する場合はlearn_andrdような何かを示唆しているか、今、この

style="@android:style/TextAppearance.Small.Inverse" 

のようなもの、のEditText要素の幅は右であり、フォントサイズは、通常のTextViewのそれと一致しました。ただし、白の背景にライトグレーがあまりにもよく見えないので、色は逆です。そして、それは私たちの問題の最後、背景に私たちをもたらします。デフォルトのEditTextバックグラウンドは最小の高さを持つため、別の背景を設定する必要があります。その高さは要素の現在の高さの高さです。 AFAIK Androidは背景画像の縮小をサポートしていません。デフォルトのものよりも小さな高さを許すEditText用の独自の背景Drawableを定義する必要があります。さもなければ、あなたが高さや詰め物や鳴き声を設定しようとしているものに関係なく、今まで何の効果もありません。

P.S.小さなEditViewを作成するのがなぜ難しいのか不思議に思うかもしれません...おそらく、それがそのままであっても、指を使って特定のカーソルにカーソルを移動することは非常に難しいという事実と関係していますEditTextの位置(すべてを消去せずにタイプミスを修正するなど)の要素。テキストをさらに小さくすることは不可能になります。したがって、あなたはおそらく、あなたが達成しようとしているもの、本当はパディングを減らそうとしない限り追求する価値のあるものを再考すべきです。

0

変更は、XML編集テキストこれらの二つのプロパティ

android:layout_height="15dp" 
android:textSize="12sp" 
関連する問題