{"record":{"id":"56c19d4a75fb42b7","repo":"material-components/material-components-android","slug":"changing-divider-modes-has-no-effect-chipgroup-do","errorCode":null,"errorMessage":"Changing divider modes has no effect. ChipGroup do not use divider drawables as spacing.","messagePattern":"Changing divider modes has no effect\\. ChipGroup do not use divider drawables as spacing\\.","errorType":"exception","errorClass":"UnsupportedOperationException","httpStatus":null,"severity":"error","filePath":"lib/java/com/google/android/material/chip/ChipGroup.java","lineNumber":248,"sourceCode":"  @Deprecated\n  public void setDividerDrawableHorizontal(Drawable divider) {\n    throw new UnsupportedOperationException(\n        \"Changing divider drawables have no effect. ChipGroup do not use divider drawables as \"\n            + \"spacing.\");\n  }\n\n  /** @deprecated Use {@link ChipGroup#setChipSpacingVertical(int)} instead. */\n  @Deprecated\n  public void setDividerDrawableVertical(@Nullable Drawable divider) {\n    throw new UnsupportedOperationException(\n        \"Changing divider drawables have no effect. ChipGroup do not use divider drawables as \"\n            + \"spacing.\");\n  }\n\n  /** @deprecated Use {@link ChipGroup#setChipSpacingHorizontal(int)} instead. */\n  @Deprecated\n  public void setShowDividerHorizontal(int dividerMode) {\n    throw new UnsupportedOperationException(\n        \"Changing divider modes has no effect. ChipGroup do not use divider drawables as spacing.\");\n  }\n\n  /** @deprecated Use {@link ChipGroup#setChipSpacingVertical(int)} instead. */\n  @Deprecated\n  public void setShowDividerVertical(int dividerMode) {\n    throw new UnsupportedOperationException(\n        \"Changing divider modes has no effect. ChipGroup do not use divider drawables as spacing.\");\n  }\n\n  /** @deprecated Use {@link ChipGroup#setSingleLine(int)} instead. */\n  @Deprecated\n  public void setFlexWrap(int flexWrap) {\n    throw new UnsupportedOperationException(\n        \"Changing flex wrap not allowed. ChipGroup exposes a singleLine attribute instead.\");\n  }\n\n  /**","sourceCodeStart":230,"sourceCodeEnd":266,"githubUrl":"https://github.com/material-components/material-components-android/blob/ac7e18efeefb331850c561faf9ab8bf81d27ba68/lib/java/com/google/android/material/chip/ChipGroup.java#L230-L266","documentation":"ChipGroup.setShowDividerHorizontal is deprecated and throws UnsupportedOperationException because ChipGroup never draws dividers; it uses chip spacing for gaps. The message points you to setChipSpacingHorizontal as the supported way to control horizontal gaps.","triggerScenarios":"Calling chipGroup.setShowDividerHorizontal(dividerMode); adapting LinearLayout's setShowDivider* API when switching to ChipGroup.","commonSituations":"Porting divider-mode logic (SHOW_DIVIDER_MIDDLE etc.) from LinearLayout-based token rows to ChipGroup; shared theming utilities that call divider APIs on any ViewGroup.","solutions":["Delete the setShowDividerHorizontal call; set chipGroup.chipSpacingHorizontal (or app:chipSpacingHorizontal) instead.","Audit shared divider utility code so it does not touch ChipGroup."],"exampleFix":"// before\nchipGroup.setShowDividerHorizontal(LinearLayout.SHOW_DIVIDER_MIDDLE) // throws\n\n// after\nchipGroup.chipSpacingHorizontal = resources.getDimensionPixelOffset(R.dimen.chip_spacing_h)","handlingStrategy":"validation","validationCode":"// ChipGroup has no divider modes; only spacing is configurable\nval spacing = resources.getDimensionPixelOffset(R.dimen.chip_spacing_h)\nchipGroup.chipSpacingHorizontal = spacing","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Do not port LinearLayout SHOW_DIVIDER_* constants to ChipGroup.","Keep divider-mode logic behind a container-type check."],"tags":["android","material-components","chipgroup","deprecated","divider"],"backgroundTag":null,"analyzedSha":"ac7e18efeefb331850c561faf9ab8bf81d27ba68","analyzedAt":"2026-08-14T15:35:35.735Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}