final SpannableStringBuilder sb = new SpannableStringBuilder();
TextView tv = createContactTextView(contactName);
BitmapDrawable bd = (BitmapDrawable) convertViewToDrawable(tv);
bd.setBounds(0, 0, bd.getIntrinsicWidth(),bd.getIntrinsicHeight());
sb.append(contactName + ",");
sb.setSpan(new ImageSpan(bd), sb.length()-(contactName.length()+1), sb.length()- 1,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
to_input.setText(sb);
public static Object convertViewToDrawable(View view) {
int spec = MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED);
view.measure(spec, spec);
view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight());
Bitmap b = Bitmap.createBitmap(view.getMeasuredWidth(), view.getMeasuredHeight(),
Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(b);
c.translate(-view.getScrollX(), -view.getScrollY());
view.draw(c);
view.setDrawingCacheEnabled(true);
Bitmap cacheBmp = view.getDrawingCache();
Bitmap viewBmp = cacheBmp.copy(Bitmap.Config.ARGB_8888, true);
view.destroyDrawingCache();
return new BitmapDrawable(viewBmp);
}
public TextView createContactTextView(String text){
//creating textview dynamically
TextView tv = new TextView(this);
tv.setText(text);
tv.setTextSize(20);
tv.setBackgroundResource(R.drawable.oval);
tv.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_clear_search_api_holo_light, 0);
tv.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
Drawable co = ((TextView) v).getCompoundDrawables()[2];
if (event.getX() > v.getMeasuredWidth() - v.getPaddingRight()
- co.getIntrinsicWidth()) {
//tv.setText("");
Log.i(TAG, "clicked on delete button");
return true;
} else {
return false;
}
}
});
return tv;
}
यह संपादन टेक्स्ट के अंदर पाठ के साथ स्पैन बनाएगा लेकिन मैं उस अवधि में हटाए गए बटन के क्लिक पर स्पैन को हटाना चाहता हूं। मैं के लिए यह "tv.setOnTouchListener (नई OnTouchListener() {................" कोड लिखा createContactTextView समारोह में, लेकिन इसके काम नहीं कर रहा। }संपादन में इसके हटाए गए बटन के क्लिक पर तत्व हटाएं टेक्स्ट
मैं एक ही रहा हूँ ... कृपया हिस्सा अगर आपको समाधान मिल गया है तो कोड ... – VijayRaj
बेशक यह करता है नहीं। टेक्स्ट व्यू का उपयोग सीधे नहीं किया जाता है। टेक्स्ट व्यू को ऑन टच लिस्टनर मिला है, लेकिन टेक्स्ट व्यू का केवल एक बिटमैप प्रदर्शित होने के बाद, कोई और ईवेंटलिस्ट नहीं है। – Servus7