MapClustering 不渲染 String.valueof(cluster.getSize)

Posted

技术标签:

【中文标题】MapClustering 不渲染 String.valueof(cluster.getSize)【英文标题】:MapClustering not rendering String.valueof(cluster.getSize) 【发布时间】:2016-09-24 20:01:57 【问题描述】:

我正在使用 MapCustomClustering 在地图上显示图像。集群图标还显示集群中的项目数,但它没有显示在我的集群中。我正在从 Parse 云加载数据。示例一呈现 cluster.getSize() 但在我的它不起作用。

  @Override
    protected void onBeforeClusterRendered(final Cluster<MapPosts> cluster, final MarkerOptions markerOptions) 
        // Draw multiple people.
        // Note: this method runs on the UI thread. Don't spend too much time in here (like in this example).
        final List<Drawable> profilePhotos = new ArrayList<>(Math.min(4, cluster.getSize()));
        final int width = mDimension;
        final int height = mDimension;
        int i = 0;
        for (MapPosts p : cluster.getItems()) 
            // Draw 4 at most.
            i++;
            Picasso.with(getApplicationContext())
                    .load(String.valueOf(p.profilePhoto))
                    .into(new Target() 
                        @Override
                        public void onBitmapLoaded(final Bitmap bitmap, Picasso.LoadedFrom from) 
                            Drawable drawable = new BitmapDrawable(getResources(), bitmap);
                            drawable.setBounds(0, 0, width, height);
                            profilePhotos.add(drawable);
                            MultiDrawable multiDrawable = new MultiDrawable(profilePhotos);
                            multiDrawable.setBounds(0, 0, width, height);
                            mClusterImageView.setImageDrawable(multiDrawable);
                            Bitmap icon = mClusterIconGenerator.makeIcon(String.valueOf(cluster.getSize()));
                            markerOptions.icon(BitmapDescriptorFactory.fromBitmap(icon));
                        

                        @Override
                        public void onBitmapFailed(Drawable errorDrawable) 
                        

                        @Override
                        public void onPrepareLoad(Drawable placeHolderDrawable) 

                        
                    );
            if (profilePhotos.size() == 4) break;
        

    

【问题讨论】:

我也有同样的问题! 我也有同样的问题,请任何人都可以纠正我很麻烦。 @Savita 你解决了这个问题吗,请告诉我这个问题。 【参考方案1】:

我找到了答案 :-) -> 确保你的图标样式中有一些这样的 TextView!重要的一点是你把它命名为“文本”!!!

    <TextView
    **android:id="@id/text"**
    android:layout_
    android:layout_
    android:background="@android:color/holo_green_dark"
    android:paddingLeft="@dimen/custom_profile_padding"
    android:paddingRight="@dimen/custom_profile_padding"
    android:layout_gravity="center"
    android:alpha=".8"/>

【讨论】:

嘿,约翰,我将在哪里获取此文本视图,因为它是在运行时动态定义的,因为它是反编译的类文件,因此无法更改。

以上是关于MapClustering 不渲染 String.valueof(cluster.getSize)的主要内容,如果未能解决你的问题,请参考以下文章

在 Vuejs 中渲染输入字段

如何使用 render_to_string 在 lib ruby​​ 类中渲染部分内容

网页渲染

为啥不工作

避免直接改变道具(渲染功能)

如何使此渲染器功能连续?