Skip to content

Latest commit

 

History

History

layoutinflater

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

LayoutInflater

Maven Central

Adding custom attributes for views usually requires extending View classes. It is highly invasive and hard to extend.

To solve the problem, this library provides LayoutInflaterFactory class. It implements android.view.LayoutInflater.Factory2 interface which is called when views are created. So that we can get in touch with attributes from XML and do our works.

Usage

Call getLayoutInflater().setFactory2(new LayoutInflaterFactory()) in Activity#onCreate. If you are using AppCompat, use the constructor LayoutInflaterFactory(AppCompatDelegate).

Extend this class or use LayoutInflaterFactory#addOnViewCreatedListener to add your works.

Example of using Insets library:

getLayoutInflater().factory2 = new LayoutInflaterFactory(getDelegate())
    .addOnViewCreatedListener(WindowInsetsHelper.LISTENER);