public abstract class LayoutlibCallback extends java.lang.Object implements IProjectCallback
Even newer LayoutLibs use this directly instead of the the interface. This allows the flexibility
to add newer methods without having to update LayoutLib API version
.
IProjectCallback.ViewAttribute
Constructor and Description |
---|
LayoutlibCallback() |
Modifier and Type | Method and Description |
---|---|
java.lang.Class<?> |
findClass(java.lang.String name)
Find a custom class in the project.
|
<T> T |
getFlag(SessionParams.Key<T> key)
A callback to query arbitrary data.
|
ParserFactory |
getParserFactory()
Get a ParserFactory which can be used to create XmlPullParsers.
|
java.lang.Integer |
getResourceValue(java.lang.String type,
java.lang.String name) |
org.xmlpull.v1.XmlPullParser |
getXmlFileParser(java.lang.String fileName)
Returns an
XmlPullParser for the psi version of an xml file. |
java.lang.Object |
loadClass(java.lang.String name,
java.lang.Class[] constructorSignature,
java.lang.Object[] constructorArgs)
Like
IProjectCallback.loadView(String, Class[], Object[]) , but intended for loading classes that may
not be custom views. |
java.lang.String[] |
resolveResourceValue(int id) |
java.lang.String |
resolveResourceValue(int[] id) |
abstract boolean |
supports(int ideFeature)
Returns if the IDE supports the requested feature.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getActionBarCallback, getAdapterBinding, getAdapterItemValue, getNamespace, getParser, getParser, getResourceId, loadView, resolveResourceId, resolveResourceId
public java.lang.Object loadClass(@NonNull java.lang.String name, @Nullable java.lang.Class[] constructorSignature, @Nullable java.lang.Object[] constructorArgs) throws java.lang.ClassNotFoundException
IProjectCallback.loadView(String, Class[], Object[])
, but intended for loading classes that may
not be custom views.name
- className in binary format (see ClassLoader
)java.lang.ClassNotFoundException
- any exceptions thrown when creating the instance is wrapped in
ClassNotFoundException.public abstract boolean supports(int ideFeature)
Features
@Nullable public <T> T getFlag(@NonNull SessionParams.Key<T> key)
RenderParams.setFlag(SessionParams.Key,
Object)
. The main difference is that when using this, the IDE doesn't have to compute the
value in advance and thus may save on some computation.@NonNull public ParserFactory getParserFactory()
@NonNull public java.lang.Class<?> findClass(@NonNull java.lang.String name) throws java.lang.ClassNotFoundException
Like loadClass(String, Class[], Object[])
, but doesn't instantiate
an object and just returns the class found.
name
- className in binary format. (see ClassLoader
.java.lang.ClassNotFoundException
@Nullable public org.xmlpull.v1.XmlPullParser getXmlFileParser(java.lang.String fileName)
XmlPullParser
for the psi version of an xml file.
The call to the method should be guarded by a check for
RenderParamsFlag.FLAG_KEY_XML_FILE_PARSER_SUPPORT
.fileName
- name of the file to parsepublic final java.lang.Integer getResourceValue(java.lang.String type, java.lang.String name)
public final java.lang.String[] resolveResourceValue(int id)
public final java.lang.String resolveResourceValue(int[] id)