title: Koin SharedViewModel Property Not Updating Between Two Fragments When LifeCycleOwner Is Set to Activity
body: <p>I have two fragments A and B, that each share a sharedViewModel via Koin as such:</p>
  <pre><code>     val viewModel: IngredientViewModel by sharedViewModel()
  </code></pre>
  <p>The binding for fragment A had its <code>binding.lifecycleowner = requireActivity()</code>, so it is bound to the lifecycle of the activity holding it. Fragment A also uses data binding, with a viewModel as a data bound variable as such:</p>
  <pre><code>//layout for fragment A
  &lt;layout&gt;
  &lt;data&gt;
          &lt;variable
              name=&quot;viewModel&quot;
              type=&quot;com.example.nutritionapp.ingredientlist.IngredientViewModel&quot;
          /&gt;
  
  &lt;/data&gt;
  
  &lt;TextView
  android:text=&quot;@{viewMode.someProperty}&quot;
  /&gt;
  &lt;/layout&gt;
  </code></pre>
  <p>When I navigate to fragment B and change the value of <code>someProperty</code> in the sharedViewModel, I expect that change to be shown when I navigate back to fragment A in the textView shown above. However, in fragment A when the <code>binding.lifecycleowner = requireActivity()</code>, the TextView does not update and only does so when <code>binding.lifecycleowner = viewLifecycleowner</code>.</p>
  <p>I understand that the latter works because the fragment is bound to the fragment's view's lifecycle and so a new <code>sharedViewModel</code> is created when the fragment, particularly in <code>binding.viewModel = mySharedViewModel</code> inside of onCreateView().</p>
  <p>So does this mean that my viewModel variable in the layout of fragment A was fixed? Meaning the data bound viewModel is a separate copy? I am hesitant to accept this explanation since Koin says about SharedViewModel:</p>
  <blockquote>
  <p>One ViewModel instance can be shared between Fragments and their host Activity.</p>
  </blockquote>