| <html devsite="true"> |
| <head> |
| <title>ViewModelProvider.NewInstanceFactory</title> |
| {% setvar book_path %}/reference/androidx/_book.yaml{% endsetvar %} |
| {% include "_shared/_reference-head-tags.html" %} |
| </head> |
| <body> |
| <div id="metadata-info-block"></div> |
| <h1>ViewModelProvider.NewInstanceFactory</h1> |
| <p> |
| <pre>public class <a href="/reference/androidx/lifecycle/ViewModelProvider.NewInstanceFactory.html">ViewModelProvider.NewInstanceFactory</a> implements <a href="/reference/androidx/lifecycle/ViewModelProvider.Factory.html">ViewModelProvider.Factory</a></pre> |
| </p> |
| <div class="devsite-table-wrapper"><devsite-expandable><span class="expand-control jd-sumtable-subclasses">Known direct subclasses |
| <div class="showalways" id="subclasses-direct"><a href="/reference/androidx/lifecycle/ViewModelProvider.AndroidViewModelFactory.html">ViewModelProvider.AndroidViewModelFactory</a></div> |
| </span> |
| <div id="subclasses-direct-summary"> |
| <div class="devsite-table-wrapper"> |
| <table class="responsive"> |
| <colgroup> |
| <col width="40%"> |
| <col> |
| </colgroup> |
| <tbody class="list"> |
| <tr> |
| <td width="40%"><code><a href="/reference/androidx/lifecycle/ViewModelProvider.AndroidViewModelFactory.html">ViewModelProvider.AndroidViewModelFactory</a></code></td> |
| <td> |
| <p><code><a href="/reference/androidx/lifecycle/ViewModelProvider.Factory.html">Factory</a></code> which may create <code><a href="/reference/androidx/lifecycle/AndroidViewModel.html">AndroidViewModel</a></code> and <code><a href="/reference/androidx/lifecycle/ViewModel.html">ViewModel</a></code>, which have an empty constructor.</p> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| </devsite-expandable> </div> |
| <hr> |
| <p>Simple factory, which calls empty constructor on the give class.</p> |
| <h2>Summary</h2> |
| <div class="devsite-table-wrapper"> |
| <table class="responsive"> |
| <colgroup> |
| <col width="40%"> |
| <col> |
| </colgroup> |
| <thead> |
| <tr> |
| <th colspan="100%"><h3>Nested types</h3></th> |
| </tr> |
| </thead> |
| <tbody class="list"> |
| <tr> |
| <td> |
| <div><code>public static class <a href="/reference/androidx/lifecycle/ViewModelProvider.NewInstanceFactory.Companion.html">ViewModelProvider.NewInstanceFactory.Companion</a></code></div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <div class="devsite-table-wrapper"> |
| <table class="responsive"> |
| <colgroup> |
| <col width="40%"> |
| <col> |
| </colgroup> |
| <thead> |
| <tr> |
| <th colspan="100%"><h3>Public fields</h3></th> |
| </tr> |
| </thead> |
| <tbody class="list"> |
| <tr> |
| <td width="40%"><code>final @<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> <a href="/reference/androidx/lifecycle/viewmodel/CreationExtras.Key.html">CreationExtras.Key</a><@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/java/lang/String.html">String</a>></code></td> |
| <td> |
| <div><code><a href="/reference/androidx/lifecycle/ViewModelProvider.NewInstanceFactory.Companion.html#VIEW_MODEL_KEY()">VIEW_MODEL_KEY</a></code></div> |
| <p>A <code><a href="/reference/androidx/lifecycle/viewmodel/CreationExtras.Key.html">CreationExtras.Key</a></code> to get a key associated with a requested <code>ViewModel</code> from <code><a href="/reference/androidx/lifecycle/viewmodel/CreationExtras.html">CreationExtras</a></code></p> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <div class="devsite-table-wrapper"> |
| <table class="responsive"> |
| <colgroup> |
| <col width="40%"> |
| <col> |
| </colgroup> |
| <thead> |
| <tr> |
| <th colspan="100%"><h3>Public constructors</h3></th> |
| </tr> |
| </thead> |
| <tbody class="list"> |
| <tr> |
| <td> |
| <div><code><a href="/reference/androidx/lifecycle/ViewModelProvider.NewInstanceFactory.html#NewInstanceFactory()">NewInstanceFactory</a>()</code></div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <div class="devsite-table-wrapper"> |
| <table class="responsive"> |
| <colgroup> |
| <col width="40%"> |
| <col> |
| </colgroup> |
| <thead> |
| <tr> |
| <th colspan="100%"><h3>Public methods</h3></th> |
| </tr> |
| </thead> |
| <tbody class="list"> |
| <tr> |
| <td width="40%"><code>@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> T</code></td> |
| <td> |
| <div><code><T extends <a href="/reference/androidx/lifecycle/ViewModel.html">ViewModel</a>> <a href="/reference/androidx/lifecycle/ViewModelProvider.NewInstanceFactory.html#create(java.lang.Class)">create</a>(@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/java/lang/Class.html">Class</a><@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> T> modelClass)</code></div> |
| <p>Creates a new instance of the given <code>Class</code>.</p> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <div class="devsite-table-wrapper"> |
| <table class="responsive" id="inhmethods"> |
| <thead> |
| <tr> |
| <th colspan="100%"><h3>Inherited methods</h3></th> |
| </tr> |
| </thead> |
| <tbody class="list"> |
| <tr> |
| <td><devsite-expandable><span class="expand-control">From <a href="/reference/androidx/lifecycle/ViewModelProvider.Factory.html">androidx.lifecycle.ViewModelProvider.Factory</a></span> |
| <div class="devsite-table-wrapper"> |
| <table class="responsive"> |
| <colgroup> |
| <col width="40%"> |
| <col> |
| </colgroup> |
| <tbody class="list"> |
| <tr> |
| <td width="40%"><code>@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> T</code></td> |
| <td> |
| <div><code><T extends <a href="/reference/androidx/lifecycle/ViewModel.html">ViewModel</a>> <a href="/reference/androidx/lifecycle/ViewModelProvider.Factory.html#create(java.lang.Class,androidx.lifecycle.viewmodel.CreationExtras)">create</a>(<br> @<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/java/lang/Class.html">Class</a><@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> T> modelClass,<br> @<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> <a href="/reference/androidx/lifecycle/viewmodel/CreationExtras.html">CreationExtras</a> extras<br>)</code></div> |
| <p>Creates a new instance of the given <code>Class</code>.</p> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </devsite-expandable> </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <div class="list"> |
| <h2>Public fields</h2> |
| <div class="api-item"><a name="getVIEW_MODEL_KEY()"></a><a name="setVIEW_MODEL_KEY()"></a><a name="getVIEW_MODEL_KEY--"></a><a name="setVIEW_MODEL_KEY--"></a> |
| <h3 class="api-name" id="VIEW_MODEL_KEY()">VIEW_MODEL_KEY</h3> |
| <pre class="api-signature no-pretty-print">public final @<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> <a href="/reference/androidx/lifecycle/viewmodel/CreationExtras.Key.html">CreationExtras.Key</a><@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/java/lang/String.html">String</a>> <a href="/reference/androidx/lifecycle/ViewModelProvider.NewInstanceFactory.Companion.html#VIEW_MODEL_KEY()">VIEW_MODEL_KEY</a></pre> |
| <p>A <code><a href="/reference/androidx/lifecycle/viewmodel/CreationExtras.Key.html">CreationExtras.Key</a></code> to get a key associated with a requested <code>ViewModel</code> from <code><a href="/reference/androidx/lifecycle/viewmodel/CreationExtras.html">CreationExtras</a></code></p> |
| <p><code>ViewModelProvider</code> automatically puts a key that was passed to <code>ViewModelProvider.get(key, MyViewModel::class.java)</code> or generated in <code>ViewModelProvider.get(MyViewModel::class.java)</code> to the <code>CreationExtras</code> that are passed to <code><a href="/reference/androidx/lifecycle/ViewModelProvider.Factory.html">ViewModelProvider.Factory</a></code>.</p> |
| </div> |
| </div> |
| <div class="list"> |
| <h2>Public constructors</h2> |
| <div class="api-item"><a name="NewInstanceFactory--"></a><a name="newinstancefactory"></a> |
| <h3 class="api-name" id="NewInstanceFactory()">NewInstanceFactory</h3> |
| <pre class="api-signature no-pretty-print">public <a href="/reference/androidx/lifecycle/ViewModelProvider.NewInstanceFactory.html#NewInstanceFactory()">NewInstanceFactory</a>()</pre> |
| </div> |
| </div> |
| <div class="list"> |
| <h2>Public methods</h2> |
| <div class="api-item"><a name="create-java.lang.Class-"></a><a name="create"></a> |
| <h3 class="api-name" id="create(java.lang.Class)">create</h3> |
| <pre class="api-signature no-pretty-print">public @<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> T <T extends <a href="/reference/androidx/lifecycle/ViewModel.html">ViewModel</a>> <a href="/reference/androidx/lifecycle/ViewModelProvider.NewInstanceFactory.html#create(java.lang.Class)">create</a>(@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/java/lang/Class.html">Class</a><@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> T> modelClass)</pre> |
| <p>Creates a new instance of the given <code>Class</code>.</p> |
| <p>Default implementation throws <code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unsupported-operation-exception/index.html">UnsupportedOperationException</a></code>.</p> |
| <div class="devsite-table-wrapper"> |
| <table class="responsive"> |
| <colgroup> |
| <col width="40%"> |
| <col> |
| </colgroup> |
| <thead> |
| <tr> |
| <th colspan="100%">Parameters</th> |
| </tr> |
| </thead> |
| <tbody class="list"> |
| <tr> |
| <td width="40%"><code>@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/java/lang/Class.html">Class</a><@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> T> modelClass</code></td> |
| <td> |
| <p>a <code>Class</code> whose instance is requested</p> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <div class="devsite-table-wrapper"> |
| <table class="responsive"> |
| <colgroup> |
| <col width="40%"> |
| <col> |
| </colgroup> |
| <thead> |
| <tr> |
| <th colspan="100%">Returns</th> |
| </tr> |
| </thead> |
| <tbody class="list"> |
| <tr> |
| <td width="40%"><code>@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a> T</code></td> |
| <td> |
| <p>a newly created ViewModel</p> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| </div> |
| </body> |
| </html> |