我想在我的MapView
上显示一些位置。这些位置将显示编号为1、2、3的管脚。等等(类似于谷歌地图结果,但它是A,B,C…)。我认为不可能把所有的数字都用在别针上。
有没有什么方法可以让我用TextView
创建一个带有pin背景的布局,然后动态地将数字放入TextView
中,而该布局将用作可绘制的pin??
或者其他方法来达到这个目的??请提供一些建议。
(我可以在MapView
上显示不同的可拉伸管脚。我只想动态创建可拉伸管脚)
最佳答案
解决了这个问题。
使用pin背景对textview进行了充气,并将位置动态设置为textview。
public Drawable createFromView(int positionNumber)
{
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.drawable.pin_icon, null, false);
TextView tv = (TextView) view.findViewById(R.id.pin_background);
tv.setText(" "+ (positionNumber+1) ); // +1 since position is starting from 0
tv.setDrawingCacheEnabled(true);
tv.layout(0, 0, 50, 50);
tv.buildDrawingCache();
Bitmap b = Bitmap.createBitmap(tv.getDrawingCache());
tv.setDrawingCacheEnabled(false);
Drawable d = new BitmapDrawable(b);
return d;
}