所以我开始在设计支持库中使用新的Snackbar,但是我发现当你在主题中定义“android:textColor”时,它适用于快餐栏的文本颜色。 这显然是一个问题,如果您的主要文字颜色是黑暗的。 有没有人知道解决这个问题的方法,或者如何为我的文本添加颜色? 编辑2017年1月:(回答后) 虽然有一些自定义的解决方案可以解决以下问题,但为主题Snackbars提供正确的方法可能也不错。 首先,你可能不应该在你的主题中定义android:textColor (除非你真的知道使用主题的范围)。 这设置基本上连接到您的主题的每个视图的文本颜色。 如果要在视图中定义不是默认的文本颜色,请使用android:primaryTextColor并在您的自定义视图中引用该属性。 但是,要将主题应用于Snackbar ,请参考第三方材料文档中的质量指南: http : //www.materialdoc.com/snackbar/ (按照程序化主题实现,不要依赖xml样式) 以供参考: // create instance Snackbar snackbar = Snackbar.make(view, text, duration); // set action button color snackbar.setActionTextColor(getResources().getColor(R.color.indigo)); // get snackbar view View snackbarView = snackbar.getView(); // change snackbar text color int snackbarTextId = android.support.design.R.id.snackbar_text; TextView textView = (TextView)snackbarView.findViewById(snackbarTextId); textView.setTextColor(getResources().getColor(R.color.indigo)); // change […]
我从设计支持库版本25使用android.support.design.widget.BottomNavigationView compile ‘com.android.support:design:25.0.0’ 当在@ menu / bottom_navigation_main中只有三个动作时,它总是显示图标和文本标签。 当有三个以上的动作时,一直显示图标和文字标签的方法是什么?
我已经经历了几篇文章和文档 ,所以问题来了解minSDK vs targetSDK与compileSDK之间的区别。 例如,在介质上: 选择您的compileSdkVersion,minSdkVersion和targetSdkVersion 基本上总结了一下 minSdkVersion <= targetSdkVersion <= compileSdkVersion 但是还是想知道如果我设置TargetSDK = 22但是编译SDK = 26有什么优点和缺点? 要考虑的要点是 – 我想使用RxJava 2,Dagger 2,最新支持库提供的Android Architecture组件,Android Studio 3.0和Gradle 4.1等。 通过将Target SDK版本设置为低于Android M的22,我想避免运行时权限对话框。 未来应该可以迁移到Kotlin。 minSDK版本将保持15