-
Notifications
You must be signed in to change notification settings - Fork 394
FAQ
家杰 edited this page Jan 12, 2019
·
3 revisions
这里整理一些大家经常加我QQ问的比较多的问题
一般会遇到这个问题的都是初学者。你需要明白一点,这个导航栏控件和其上的页面是没有强相关性的。点击导航栏的按钮就是一个点击事件,回调都是有的。 添加如下事件监听就可以解决
navigationController.addTabItemSelectedListener(new OnTabItemSelectedListener() {
@Override
public void onSelected(int index, int old) {
// 当导航按钮选中时被调用
}
@Override
public void onRepeat(int index) {
// 当点击已经选中的导航按钮时被调用
}
});
这个问题应该是发生在使用材料设计样式的时候(也就是用material()
构建的导航栏)。按照官方的设计指南,导航栏的图标应该是纯色的,所以在这个模式下,会按设置的常态和选中状态的颜色对图标进行染色。
从2.3.0
版本开始,添加了一个可以不对图标进行染色的方法
....
tab.material()
....
.dontTintIcon() // 不对图标进行染色
.build();
....
这个问题也有很多人来问,主要是使用的图片有点问题。
下面这张图片应该可以很好的解释这个问题
染色就是将图片的有色区域都变成同一个指定的颜色。所以,把图标上不需要染色的部分变透明就可以了。
不能!没有提供这样的方法