# ViewModelProvider.NewInstanceFactory

added in[version 1.0.0](https://developer.android.com/topic/libraries/support-library/revisions)  
belongs to Maven artifact android.arch.lifecycle:viewmodel:1.1.1  
Summary:[Ctors](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.NewInstanceFactory#pubctors)\|[Methods](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.NewInstanceFactory#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.NewInstanceFactory#inhmethods)  

# ViewModelProvider.NewInstanceFactory

| The`android.arch`Architecture Components packages are no longer maintained. They have been superseded by the corresponding[androidx.\*](https://developer.android.com/jetpack/androidx/migrate)packages. See[androidx.lifecycle.ViewModelProvider.NewInstanceFactory](https://developer.android.com/reference/androidx/lifecycle/ViewModelProvider.NewInstanceFactory)instead.

`
public
static


class
ViewModelProvider.NewInstanceFactory
`  
`

extends Object


``


implements

`[ViewModelProvider.Factory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.Factory)`


`

|---|-------------------------------------------------------------|
| java.lang.Object                                               ||
| ↳ | android.arch.lifecycle.ViewModelProvider.NewInstanceFactory |

|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Known direct subclasses [ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory) |-------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory) | [ViewModelProvider.Factory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.Factory)which may create[AndroidViewModel](https://developer.android.com/reference/android/arch/lifecycle/AndroidViewModel)and[ViewModel](https://developer.android.com/reference/android/arch/lifecycle/ViewModel), which have an empty constructor. | |

|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Known indirect subclasses [ViewModelProviders.DefaultFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProviders.DefaultFactory) |---------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [ViewModelProviders.DefaultFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProviders.DefaultFactory) | *This class was deprecated in API level 1.1.0. Use[ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory)* | |

<br />

*** ** * ** ***

Simple factory, which calls empty constructor on the give class.

## Summary

|                                                                                    ### Public constructors                                                                                    ||
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| ` `[ViewModelProvider.NewInstanceFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.NewInstanceFactory#ViewModelProvider.NewInstanceFactory())`() ` |

|                                                                                                                                                    ### Public methods                                                                                                                                                     ||
|----------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` <T extends `[ViewModel](https://developer.android.com/reference/android/arch/lifecycle/ViewModel)`> T` | ` `[create](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.NewInstanceFactory#create(java.lang.Class<T>))`(Class<T> modelClass) ` Creates a new instance of the given`Class`. |

| ### Inherited methods |
|-----------------------|---|
| From class` java.lang.Object ` |-------------------|-------------------------------| | ` Object`         | ` clone() `                   | | ` boolean`        | ` equals(Object arg0) `       | | ` void`           | ` finalize() `                | | ` final Class<?>` | ` getClass() `                | | ` int`            | ` hashCode() `                | | ` final void`     | ` notify() `                  | | ` final void`     | ` notifyAll() `               | | ` String`         | ` toString() `                | | ` final void`     | ` wait(long arg0, int arg1) ` | | ` final void`     | ` wait(long arg0) `           | | ` final void`     | ` wait() `                    | ||
| From interface` `[android.arch.lifecycle.ViewModelProvider.Factory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.Factory)` ` |-------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` abstract <T extends `[ViewModel](https://developer.android.com/reference/android/arch/lifecycle/ViewModel)`> T` | ` `[create](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.Factory#create(java.lang.Class<T>))`(Class<T> modelClass) ` Creates a new instance of the given`Class`. | ||

## Public constructors

### ViewModelProvider.NewInstanceFactory

added in[version 1.0.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
ViewModelProvider.NewInstanceFactory ()
```

<br />

<br />

## Public methods

### create

added in[version 1.0.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
T create (Class<T> modelClass)
```

Creates a new instance of the given`Class`.

<br />

<br />

|                            Parameters                             ||
|--------------|-----------------------------------------------------|
| `modelClass` | `Class`: a`Class`whose instance is requested <br /> |

|                Returns                ||
|-----|----------------------------------|
| `T` | a newly created ViewModel <br /> |

-

  ## Annotations

  - [OnLifecycleEvent](https://developer.android.com/reference/android/arch/lifecycle/OnLifecycleEvent)
-

  ## Interfaces

  - [DefaultLifecycleObserver](https://developer.android.com/reference/android/arch/lifecycle/DefaultLifecycleObserver)
  - [LifecycleObserver](https://developer.android.com/reference/android/arch/lifecycle/LifecycleObserver)
  - [LifecycleOwner](https://developer.android.com/reference/android/arch/lifecycle/LifecycleOwner)
  - [LifecycleRegistryOwner](https://developer.android.com/reference/android/arch/lifecycle/LifecycleRegistryOwner)
  - [Observer](https://developer.android.com/reference/android/arch/lifecycle/Observer)
  - [ViewModelProvider.Factory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.Factory)
  - [ViewModelStoreOwner](https://developer.android.com/reference/android/arch/lifecycle/ViewModelStoreOwner)
-

  ## Classes

  - [AndroidViewModel](https://developer.android.com/reference/android/arch/lifecycle/AndroidViewModel)
  - [Lifecycle](https://developer.android.com/reference/android/arch/lifecycle/Lifecycle)
  - [LifecycleRegistry](https://developer.android.com/reference/android/arch/lifecycle/LifecycleRegistry)
  - [LifecycleService](https://developer.android.com/reference/android/arch/lifecycle/LifecycleService)
  - [LiveData](https://developer.android.com/reference/android/arch/lifecycle/LiveData)
  - [LiveDataReactiveStreams](https://developer.android.com/reference/android/arch/lifecycle/LiveDataReactiveStreams)
  - [MediatorLiveData](https://developer.android.com/reference/android/arch/lifecycle/MediatorLiveData)
  - [MutableLiveData](https://developer.android.com/reference/android/arch/lifecycle/MutableLiveData)
  - [ProcessLifecycleOwner](https://developer.android.com/reference/android/arch/lifecycle/ProcessLifecycleOwner)
  - [ServiceLifecycleDispatcher](https://developer.android.com/reference/android/arch/lifecycle/ServiceLifecycleDispatcher)
  - [Transformations](https://developer.android.com/reference/android/arch/lifecycle/Transformations)
  - [ViewModel](https://developer.android.com/reference/android/arch/lifecycle/ViewModel)
  - [ViewModelProvider](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider)
  - [ViewModelProvider.AndroidViewModelFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.AndroidViewModelFactory)
  - [ViewModelProvider.NewInstanceFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProvider.NewInstanceFactory)
  - [ViewModelProviders](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProviders)
  - [ViewModelProviders.DefaultFactory](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProviders.DefaultFactory)
  - [ViewModelStore](https://developer.android.com/reference/android/arch/lifecycle/ViewModelStore)
  - [ViewModelStores](https://developer.android.com/reference/android/arch/lifecycle/ViewModelStores)
-

  ## Enums

  - [Lifecycle.Event](https://developer.android.com/reference/android/arch/lifecycle/Lifecycle.Event)
  - [Lifecycle.State](https://developer.android.com/reference/android/arch/lifecycle/Lifecycle.State)