我试图在android.support.design.widget.TabLayout中设置标签样式我无法更改选定的标签颜色,它总是设置为我的应用主题中的textColorPrimary,但我需要它们是不同的颜色.
我已尝试在styles.xml中设置适用于TabLayout的值,但我读过你不能以这种方式更改活动标签文本颜色,尽管我可以更改未选择的标签文本颜色.我也尝试过:
tabLayout.setTabTextColors(getResources().getColorStateList(R.color.selector));
Run Code Online (Sandbox Code Playgroud)
和
tabLayout.setTabTextColors(R.color.Green, R.color.Blue);
Run Code Online (Sandbox Code Playgroud)
是否可以覆盖选定的标签文字颜色?
当用户需要在应用程序范围内收到问题警报时,我正在使用系统覆盖显示通知图标。当活动被破坏时,我会得到一个泄漏的窗口,尽管我正在删除视图。
该代码位于由应用程序中的大多数其他活动扩展的基本活动中。
protected void createOverlay(){
if (overlayCreated) return;
// Create System overlay video
WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.FILL_PARENT, 150,
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
| WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL,
PixelFormat.TRANSLUCENT);
params.gravity = Gravity.BOTTOM;
LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
mOverlay = (LinearLayout) inflater.inflate(R.layout.overlay_notification, null);
mOverlayImageView = (ImageView) mOverlay.findViewById(R.id.overlay_notification_image);
WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
wm.addView(mOverlay, params);
final Context context = this;
mOverlay.setOnTouchListener(new View.OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
Toast.makeText(context, "WootHa!", Toast.LENGTH_SHORT).show();
return true;
}
});
}
Run Code Online (Sandbox Code Playgroud)
破坏
@Override
public void onDestroy() {
super.onDestroy();
// …Run Code Online (Sandbox Code Playgroud)