public final class FolderConfiguration extends java.lang.Object implements java.lang.Comparable<FolderConfiguration>, java.io.Serializable
| Modifier and Type | Field and Description |
|---|---|
static com.google.common.base.Splitter |
QUALIFIER_SPLITTER
Splitter which can be used to split qualifiers.
|
| Constructor and Description |
|---|
FolderConfiguration() |
public static final com.google.common.base.Splitter QUALIFIER_SPLITTER
@Nullable public static FolderConfiguration getConfig(@NonNull java.lang.String[] folderSegments)
FolderConfiguration matching the folder segments.folderSegments - The segments of the folder name. The first segments should contain
the name of the folder@Nullable public static FolderConfiguration getConfig(@NonNull java.lang.Iterable<java.lang.String> folderSegments)
FolderConfiguration matching the folder segments.folderSegments - The segments of the folder name. The first segments should contain
the name of the foldergetConfig(String[])@Nullable public static FolderConfiguration getConfigFromQualifiers(@NonNull java.lang.Iterable<java.lang.String> qualifiers)
FolderConfiguration matching the qualifiers.qualifiers - the qualifiers.@Nullable public static FolderConfiguration getConfigFromQualifiers(@NonNull java.util.Iterator<java.lang.String> qualifiers)
FolderConfiguration matching the qualifiers.qualifiers - An iterator on the qualifiers.@Nullable public static FolderConfiguration getConfigForFolder(@NonNull java.lang.String folderName)
FolderConfiguration matching the given folder name.folderName - the folder name@NonNull public static FolderConfiguration copyOf(@NonNull FolderConfiguration original)
FolderConfiguration, that can be modified without
affecting the original.@Nullable public static FolderConfiguration getConfigForQualifierString(@NonNull java.lang.String qualifierString)
FolderConfiguration matching the given qualifier string
(just the qualifiers; e.g. for a folder like "values-en-rUS" this would be "en-rUS").qualifierString - the qualifier stringpublic static int getQualifierCount()
ResourceQualifier that make up a Folder configuration.public void set(@Nullable
FolderConfiguration config)
This is equivalent to set(config, false)
config - the configuration to setset(FolderConfiguration, boolean)public void set(@Nullable
FolderConfiguration config,
boolean nonFakeValuesOnly)
config - the configuration to setnonFakeValuesOnly - if set to true this ignore qualifiers for which the
current value is a fake value.ResourceQualifier.hasFakeValue()public void reset()
null.public void substract(@NonNull
FolderConfiguration config)
public void add(@NonNull
FolderConfiguration config)
@Nullable public ResourceQualifier getInvalidQualifier()
null if they are all valid (or if none
exists).public void addQualifier(@Nullable
ResourceQualifier qualifier)
FolderConfigurationqualifier - the ResourceQualifier to add.public void removeQualifier(@NonNull
ResourceQualifier qualifier)
FolderConfiguration.qualifier - the ResourceQualifier to remove.@Nullable public ResourceQualifier getQualifier(int index)
getQualifierCount().index - the index of the qualifier to return.public void setCountryCodeQualifier(CountryCodeQualifier qualifier)
@Nullable public CountryCodeQualifier getCountryCodeQualifier()
public void setNetworkCodeQualifier(NetworkCodeQualifier qualifier)
@Nullable public NetworkCodeQualifier getNetworkCodeQualifier()
public void setLocaleQualifier(LocaleQualifier qualifier)
@Nullable public LocaleQualifier getLocaleQualifier()
public void setLayoutDirectionQualifier(LayoutDirectionQualifier qualifier)
@Nullable public LayoutDirectionQualifier getLayoutDirectionQualifier()
public void setSmallestScreenWidthQualifier(SmallestScreenWidthQualifier qualifier)
@Nullable public SmallestScreenWidthQualifier getSmallestScreenWidthQualifier()
public void setScreenWidthQualifier(ScreenWidthQualifier qualifier)
@Nullable public ScreenWidthQualifier getScreenWidthQualifier()
public void setScreenHeightQualifier(ScreenHeightQualifier qualifier)
@Nullable public ScreenHeightQualifier getScreenHeightQualifier()
public void setScreenSizeQualifier(ScreenSizeQualifier qualifier)
@Nullable public ScreenSizeQualifier getScreenSizeQualifier()
public void setScreenRatioQualifier(ScreenRatioQualifier qualifier)
@Nullable public ScreenRatioQualifier getScreenRatioQualifier()
public void setScreenRoundQualifier(ScreenRoundQualifier qualifier)
@Nullable public ScreenRoundQualifier getScreenRoundQualifier()
public void setWideColorGamutQualifier(WideGamutColorQualifier qualifier)
@Nullable public WideGamutColorQualifier getWideColorGamutQualifier()
public void setHighDynamicRangeQualifier(HighDynamicRangeQualifier qualifier)
@Nullable public HighDynamicRangeQualifier getHighDynamicRangeQualifier()
public void setScreenOrientationQualifier(ScreenOrientationQualifier qualifier)
@Nullable public ScreenOrientationQualifier getScreenOrientationQualifier()
public void setUiModeQualifier(UiModeQualifier qualifier)
@Nullable public UiModeQualifier getUiModeQualifier()
public void setNightModeQualifier(NightModeQualifier qualifier)
@Nullable public NightModeQualifier getNightModeQualifier()
public void setDensityQualifier(DensityQualifier qualifier)
@Nullable public DensityQualifier getDensityQualifier()
public void setTouchTypeQualifier(TouchScreenQualifier qualifier)
@Nullable public TouchScreenQualifier getTouchTypeQualifier()
public void setKeyboardStateQualifier(KeyboardStateQualifier qualifier)
@Nullable public KeyboardStateQualifier getKeyboardStateQualifier()
public void setTextInputMethodQualifier(TextInputMethodQualifier qualifier)
@Nullable public TextInputMethodQualifier getTextInputMethodQualifier()
public void setNavigationStateQualifier(NavigationStateQualifier qualifier)
@Nullable public NavigationStateQualifier getNavigationStateQualifier()
public void setNavigationMethodQualifier(NavigationMethodQualifier qualifier)
@Nullable public NavigationMethodQualifier getNavigationMethodQualifier()
public void setScreenDimensionQualifier(ScreenDimensionQualifier qualifier)
@Nullable public ScreenDimensionQualifier getScreenDimensionQualifier()
public void setVersionQualifier(VersionQualifier qualifier)
@Nullable public VersionQualifier getVersionQualifier()
public void normalize()
public void updateScreenWidthAndHeight()
SmallestScreenWidthQualifier, ScreenWidthQualifier, and
ScreenHeightQualifier based on the (required) values of
ScreenDimensionQualifier DensityQualifier, and
ScreenOrientationQualifier.
Also the density cannot be Density.NODPI as it's not valid on a device.public boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic boolean isDefault()
@NonNull
public java.lang.String getFolderName(@NonNull
com.android.resources.ResourceFolderType folder)
@Deprecated @NonNull public java.lang.String getUniqueKey()
getQualifierString() instead.@NonNull public java.lang.String getQualifierString()
@NonNull public java.lang.String toString()
toDisplayString().toString in class java.lang.Object@NonNull public java.lang.String toDisplayString()
@NonNull public java.lang.String toShortDisplayString()
public int compareTo(@NonNull
FolderConfiguration folderConfig)
compareTo in interface java.lang.Comparable<FolderConfiguration>@Nullable public <T extends Configurable> T findMatchingConfigurable(@Nullable java.util.List<T> configurables)
Configurable for this configuration.configurables - the list of Configurable to choose from.Configurable or null.
See http://d.android.com/guide/topics/resources/resources-i18n.html#best-match@NonNull public <T extends Configurable> java.util.List<T> findMatchingConfigurables(@Nullable java.util.List<T> configurables)
Configurables as possible. It skips the
ResourceQualifier if it's not valid and assumes that all resources match it.configurables - the list of Configurable to choose from.public boolean isMatchFor(@Nullable
FolderConfiguration referenceConfig)
A match means that, for each qualifier of this config
referenceConfig - The reference configuration to test against.public int getHighestPriorityQualifier(int startIndex)
ResourceQualifier starting at index
startIndexpublic static FolderConfiguration createDefault()
@NonNull public ResourceQualifier[] getQualifiers()