我想在我的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;
}

07-24 09:47
查看更多