com.android.tools.lint.checks
Class MergeRootFrameLayoutDetector

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.detector.api.LayoutDetector
              extended by com.android.tools.lint.checks.MergeRootFrameLayoutDetector
All Implemented Interfaces:
com.android.tools.lint.detector.api.Detector.JavaScanner, com.android.tools.lint.detector.api.Detector.XmlScanner

public class MergeRootFrameLayoutDetector
extends com.android.tools.lint.detector.api.LayoutDetector
implements com.android.tools.lint.detector.api.Detector.JavaScanner

Checks whether a root FrameLayout can be replaced with a <merge> tag.


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.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
          The main issue discovered by this detector
 
Fields inherited from interface com.android.tools.lint.detector.api.Detector.XmlScanner
ALL
 
Constructor Summary
MergeRootFrameLayoutDetector()
          Constructs a new MergeRootFrameLayoutDetector
 
Method Summary
 void afterCheckProject(com.android.tools.lint.detector.api.Context context)
           
 boolean appliesTo(com.android.tools.lint.detector.api.Context context, java.io.File file)
           
 java.util.Collection<java.lang.String> getApplicableElements()
           
 java.util.List<java.lang.String> getApplicableMethodNames()
           
 com.android.tools.lint.detector.api.Speed getSpeed()
           
 void visitElement(com.android.tools.lint.detector.api.XmlContext context, org.w3c.dom.Element element)
           
 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.LayoutDetector
appliesTo, hasPadding, isHeightFillParent, isWidthFillParent
 
Methods inherited from class com.android.tools.lint.detector.api.ResourceXmlDetector
run
 
Methods inherited from class com.android.tools.lint.detector.api.Detector
afterCheckFile, afterCheckLibraryProject, appliesToFolder, appliesToResourceRefs, beforeCheckFile, beforeCheckLibraryProject, beforeCheckProject, checkCall, checkClass, checkInstruction, createJavaVisitor, getApplicableAsmNodeTypes, getApplicableAttributes, getApplicableCallNames, getApplicableCallOwners, getApplicableFiles, getApplicableNodeTypes, visitAttribute, visitDocument, 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
getApplicableAttributes, visitAttribute, visitDocument, visitElementAfter
 

Field Detail

ISSUE

public static final com.android.tools.lint.detector.api.Issue ISSUE
The main issue discovered by this detector

Constructor Detail

MergeRootFrameLayoutDetector

public MergeRootFrameLayoutDetector()
Constructs a new MergeRootFrameLayoutDetector

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.tools.lint.detector.api.Context context,
                         @NonNull
                         java.io.File file)
Overrides:
appliesTo in class com.android.tools.lint.detector.api.ResourceXmlDetector

afterCheckProject

public void afterCheckProject(@NonNull
                              com.android.tools.lint.detector.api.Context context)
Overrides:
afterCheckProject in class com.android.tools.lint.detector.api.Detector

getApplicableElements

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

visitElement

public void visitElement(@NonNull
                         com.android.tools.lint.detector.api.XmlContext context,
                         @NonNull
                         org.w3c.dom.Element element)
Specified by:
visitElement in interface com.android.tools.lint.detector.api.Detector.XmlScanner
Overrides:
visitElement 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