我正在使用带有viewpager的tablayout。当有新消息或通知时,图标即通知图标和消息图标会发生变化。我用类似的图标替换图标,但带有徽章。这就是没有bage时图标的样子:
现在的问题是带有徽章的图标尺寸看起来更小,如下图所示
虽然差异非常小但我必须得到相同尺寸的图标。我认为图标大小相同,但徽章会占用空间并使图标变小。我使用tabLayout.GetTabAt(1).SetIcon(Resource.Drawable.messageWhite);
设置图标。
我尝试使用自定义视图来解决问题,但后来我有问题动态更改自定义视图。
有没有办法可以使用setIcon' property?
答案 0 :(得分:0)
您必须先获取标签项的视图。之后,您可以在自定义标签项视图中的相应图像视图中设置图标。
View v = LayoutInflater.from(this).inflate(R.layout.tab_item_horizontal,null);
tabLayout.getTabAt(0).setCustomView(v);
TextView text_tab_item = (TextView)v.findViewById(R.id.text_tab_item);
ImageView img_tabtxt = (ImageView)v.findViewById(R.id.img_tabtxt);
img_tabtxt.setImageResource(R.drawable.request_tab_white);
text_tab_item.setText("Members");
text_tab_item.setTextColor(getResources().getColor(R.color.white_color));