The question is how to change a single TabLayout.Tab's text color. Ideally, I'd like to iterate over the tabs and change their color based on information contained on the fragment of a corresponding ViewPager.
相关问题
- How can I create this custom Bottom Navigation on
- Bottom Navigation View gets Shrink Down
- How to make that the snackbar action button be sho
- Listening to outgoing sms not working android
- How to create Circular view on android wear?
相关文章
- android开发 怎么把图片放入drawable的文件夹下
- android上如何获取/storage/emulated/下的文件列表
- androidStudio有个箭头不认识
- SQLite不能创建表
- Windows - Android SDK manager not listing any plat
- Animate Recycler View grid when number of columns
- Why is the app closing suddenly without showing an
- Android OverlayItem.setMarker(): Change the marker
The easiest way is to get the
TextView
from a specifiedTabLayout.Tab
and then set the text color usingTextView.SetTextColor(Color color)
, which you can do as followed:(This is a Java answer; hopefully it is helpful despite the fact that you're using Xamarin.)
As far as I can tell, there's no way to do this using public APIs, assuming you're working with the default view created by using a
<TabItem>
tag or by callingsetupWithViewPager(myPager)
. These ways of creatingTabLayout.Tab
instances create a package-privateTabView mView
field (which itself has aprivate TextView mTextView
field). There's no way to get a reference to thisTextView
, so there's no way to do what you want....Unless you're willing to resort to reflection (which means this solution could break at any time). Then you could do something like this: