2010-11-22 15 views
1

iPhoneスタイルのEditText要素をAndroidで作成しようとしています。 テキスト入力後に右側に追加のクリアボタンが表示されます。iPhoneスタイルのテキスト編集on android

新しいボタンを追加することは問題ではありませんが、別のことでちょっとしたことがあります。

ボタンはEditTextの右側部分にある程度のスペースを占め、ボタンの下に文字が表示されるようになりました。 EditTextの入力の最大長を変更する方法は?
EditTextの幅をNピクセル、編集可能な領域をN-Mピクセルにします。

EditText.setWidthは編集ボックス全体の幅を変更します。
EditText.setEllipsizeは適切なソリューションである必要がありますが、ドキュメントは空であり、一部の文字列値に基づいてテキストを切り捨てます。
LengthFilterのカットを適用すると、入力の長さが文字数になります。

ありがとうございます。

答えて

0

私は解決策を見つけました。 EditText.setPadding(L、T、R、B)正常に動作するよう、編集可能な領域に対してのみ

1

私はandroid:drawableRightがあなたに多くの苦痛を救うと思っています。

+0

既に、右のボタンのcompoundDrawableを設定しようとしました。しかし、このdrawableにハンドラを追加する方法が見つかりませんでした。ボタンは、入力されたテキストをクリアする必要があります。 – AAverin

0

をセントをキックする。私はおそらくこのために9パッチを使用し、ボタン領域に当たる前にテキストを停止するようにコンテンツ領域を設定します。 これを行うには、カスタムレイアウトを作成する必要があります。これにより、相対レイアウトを使用してボタンを目的の位置に追加できるため、クリックして編集テキストをクリアすることができます。

また、複合ドロアブルを使用することもできますが、クリックイベントを処理できるように、 Handling click events on a drawable within an EditTextのようなものを実装する必要があります。このメソッドを使用して、ボタンの状態(たとえば、ダウン状態)が機能するかどうかは疑いの余地があります。