以下のように、Edittext 内にテキストビューを挿入しようとしています。
誰でも、それを実装する方法などについてアイデアを教えてもらえますか。
ありがとう :)
更新: edittext のテキストビューは動的に変化します。
以下のように、Edittext 内にテキストビューを挿入しようとしています。
誰でも、それを実装する方法などについてアイデアを教えてもらえますか。
ありがとう :)
更新: edittext のテキストビューは動的に変化します。
このサンプルコードを試してください。それはあなたの要件に適合します。
PopupWindow pw = new PopupWindow(
this.getViewInflate().inflate(R.layout.pw_layout,
null, true, null),
100,100,true);
// display the popup in the center
pw.showAtLocation(layout, Gravity.CENTER, 0, 0);
pw.update(20,20,100,100);
パーツ内のビューについては、EditText
を拡張する必要がありEditText
ます。外観の概要は次のとおりです。
class emailEditText extends EditText {
List<NamePhotoView> ViewlistOfSelectedContacts; // create new
void addContact(String name, Bitmap photo) {
// create a new 'NamePhotoView' and add to the ViewlistOfSelectedContacts
}
@Override
void onDraw(Canvas canvas) {
for (....) {
// draw all views from the list. left to right.
}
// you have to some how offset the text start coordinate. then call super
super.onDraw(canvas);
}
}
TextView
中には入れられないと思いますEditText
。しかし、代わりに、そのように見せることもできます。手順は次のとおりです
BitmapDrawable
SpanableString
ビットマップドローアブルを(ImageSpan
)に変換しますSpannableString
しますEditText
私は最近この種のUIを完成させ、ブログでEditTextのようなGoSmsPro/Evernoteの作成について説明しました。
上記のフレームレイアウトのように、必要なものに基づいてコンポーネントを作成できます。テキスト ビューが EditText の上にあるときに、EditText と TextView などの 2 つのビューを持つ FrameLayout または RelativeLayout を使用することができます。また、写真のように右に表示したい場合は、画像ビューを配置することもできます。
コンポーネントを作成する必要はなく、XML レイアウトで簡単に作成できますが、アプリケーションで定期的に使用する予定がある場合は、それらのビューをコンポーネントとして作成することをお勧めします。