我正在尝试在Android设计库中使用新的TabLayout创建仅带图标的应用栏。
像这样:如何使用新的TabLayout Android设计库进行操作。
有一个简单的解决方案,或者我只能使用setCustomView。我试图避免使用它。因为我没有像上面这张图片那样获得图标的色调。
我试着这样写:
tabLayout.addTab(tabLayout.newTab().setIcon(R.drawable.ic_dashboard))
但是当我选择标签
时,图标仍然保持相同的颜色答案 0 :(得分:9)
您必须为图标创建 protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
var filters = new List<FilterAttribute>();
filters.AddRange(filterContext.ActionDescriptor.GetFilterAttributes(false));
filters.AddRange(filterContext.ActionDescriptor.ControllerDescriptor.GetFilterAttributes(false));
var roles = filters.OfType<AuthorizeAttribute>().Select(f => f.Roles);
...
}
。例如:
selector
答案 1 :(得分:1)
我这样使用它: 在drawable中创建了一个xml文件,如@Budius所示。
代码中的:
tabLayout.getTabAt(0).setIcon(R.drawable.settings_tab_drawable);
等等。
答案 2 :(得分:-2)
tint_tab.xml
<com.hannesdorfmann.appkit.image.TintableImageView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:tint="@color/tab_color_selector"/>
在你的java代码
中TintableImageView tab1 = (TintableImageView) LayoutInflater.from(this).inflate(R.layout.tint_tab, null);
tab1.setImageResource(R.drawable.ic_dummy);
mTabLayout.getTabAt(0).setCustomView(tab1)