How to Create Dynamically numbered Pin Pointers on MapView?

前端 未结 1 1827
予麋鹿
予麋鹿 2021-01-03 01:30

I want to display some locations on my MapView. These locations will show pins which will have numbers 1,2,3.. so on(Similar to Google maps result but it is A,B

相关标签:
1条回答
  • 2021-01-03 01:51

    Solved this.

    Inflated the TextView with pin background and dynamically set the position into 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;
    }
    
    0 讨论(0)
提交回复
热议问题