I've an Android ListView
containing some emails. Some of them have contact thumbnails while some of them don't. For unknown contact thumbnails, I want to create a Bitmap, containing the initials of the corresponding email id. How can I achieve that? I've seen some Android apps using this technique to display contact thumbnail like this:
To start with, I'm using the following code:
ImageView iv=(ImageView)findViewById(R.id.imageView1);
TextView view = (TextView)findViewById(R.id.textView1);
Bitmap b=Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(b);
view.draw(c);
iv.setImageBitmap(b);
Where the TextView holds a simple string. Unfortunately, it doesn't work. Can anyone please give me some pointers? Thanks a lot for your help!
Well you're on the right track. Try it something like this.
ImageView iv=(ImageView)findViewById(R.id.imageView1);
Bitmap b=Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(b);
c.drawText(initials,x,y,paint);
iv.setImageBitmap(b);
You should create your own logic to center the text. You could use some of the following helper method Paint.getTextSize() to find out how much space the text needs.