com.android.tools.lint.checks
Class ViewTypeDetector

java.lang.Object
  extended by com.android.tools.lint.detector.api.Detector
      extended by com.android.tools.lint.detector.api.ResourceXmlDetector
          extended by com.android.tools.lint.checks.ViewTypeDetector
All Implemented Interfaces:
com.android.tools.lint.detector.api.Detector.JavaScanner, com.android.tools.lint.detector.api.Detector.XmlScanner

public class ViewTypeDetector
extends com.android.tools.lint.detector.api.ResourceXmlDetector
implements com.android.tools.lint.detector.api.Detector.JavaScanner

Detector for finding inconsistent usage of views and casts


Nested Class Summary
 
Nested classes/interfaces inherited from class com.android.tools.lint.detector.api.Detector
com.android.tools.lint.detector.api.Detector.ClassScanner, com.android.tools.lint.detector.api.Detector.GradleScanner, com.android.tools.lint.detector.api.Detector.JavaScanner, com.android.tools.lint.detector.api.Detector.OtherFileScanner, com.android.tools.lint.detector.api.Detector.XmlScanner
 
Field Summary
static com.android.tools.lint.detector.api.Issue ISSUE
          Mismatched view types
 
Fields inherited from interface com.android.tools.lint.detector.api.Detector.XmlScanner
ALL
 
Constructor Summary
ViewTypeDetector()
           
 
Method Summary
 boolean appliesTo(com.android.resources.ResourceFolderType folderType)
           
 java.util.Collection<java.lang.String> getApplicableAttributes()
           
 java.util.List<java.lang.String> getApplicableMethodNames()
           
 com.android.tools.lint.detector.api.Speed getSpeed()
           
protected  java.util.Collection<java.lang.String> getViewTags(com.android.tools.lint.detector.api.Context context, com.android.ide.common.res2.ResourceItem item)
           
 void visitAttribute(com.android.tools.lint.detector.api.XmlContext context, org.w3c.dom.Attr attribute)
           
 void visitMethod(com.android.tools.lint.detector.api.JavaContext context, lombok.ast.AstVisitor visitor, lombok.ast.MethodInvocation node)
           
 
Methods inherited from class com.android.tools.lint.detector.api.ResourceXmlDetector
appliesTo, run
 
Methods inherited from class com.android.tools.lint.detector.api.Detector
afterCheckFile, afterCheckLibraryProject, afterCheckProject, appliesToFolder, appliesToResourceRefs, beforeCheckFile, beforeCheckLibraryProject, beforeCheckProject, checkCall, checkClass, checkInstruction, createJavaVisitor, getApplicableAsmNodeTypes, getApplicableCallNames, getApplicableCallOwners, getApplicableElements, getApplicableFiles, getApplicableNodeTypes, visitBuildScript, visitDocument, visitElement, visitElementAfter, visitResourceReference
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.android.tools.lint.detector.api.Detector.JavaScanner
appliesToResourceRefs, createJavaVisitor, getApplicableNodeTypes, visitResourceReference
 
Methods inherited from interface com.android.tools.lint.detector.api.Detector.XmlScanner
getApplicableElements, visitDocument, visitElement, visitElementAfter
 

Field Detail

ISSUE

public static final com.android.tools.lint.detector.api.Issue ISSUE
Mismatched view types

Constructor Detail

ViewTypeDetector

public ViewTypeDetector()
Method Detail

getSpeed

@NonNull
public com.android.tools.lint.detector.api.Speed getSpeed()
Overrides:
getSpeed in class com.android.tools.lint.detector.api.Detector

appliesTo

public boolean appliesTo(@NonNull
                         com.android.resources.ResourceFolderType folderType)
Overrides:
appliesTo in class com.android.tools.lint.detector.api.ResourceXmlDetector

getApplicableAttributes

public java.util.Collection<java.lang.String> getApplicableAttributes()
Specified by:
getApplicableAttributes in interface com.android.tools.lint.detector.api.Detector.XmlScanner
Overrides:
getApplicableAttributes in class com.android.tools.lint.detector.api.Detector

visitAttribute

public void visitAttribute(@NonNull
                           com.android.tools.lint.detector.api.XmlContext context,
                           @NonNull
                           org.w3c.dom.Attr attribute)
Specified by:
visitAttribute in interface com.android.tools.lint.detector.api.Detector.XmlScanner
Overrides:
visitAttribute in class com.android.tools.lint.detector.api.Detector

getApplicableMethodNames

public java.util.List<java.lang.String> getApplicableMethodNames()
Specified by:
getApplicableMethodNames in interface com.android.tools.lint.detector.api.Detector.JavaScanner
Overrides:
getApplicableMethodNames in class com.android.tools.lint.detector.api.Detector

visitMethod

public void visitMethod(@NonNull
                        com.android.tools.lint.detector.api.JavaContext context,
                        @Nullable
                        lombok.ast.AstVisitor visitor,
                        @NonNull
                        lombok.ast.MethodInvocation node)
Specified by:
visitMethod in interface com.android.tools.lint.detector.api.Detector.JavaScanner
Overrides:
visitMethod in class com.android.tools.lint.detector.api.Detector

getViewTags

@Nullable
protected java.util.Collection<java.lang.String> getViewTags(@NonNull
                                                                      com.android.tools.lint.detector.api.Context context,
                                                                      @NonNull
                                                                      com.android.ide.common.res2.ResourceItem item)