groovy dependencies { implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:1.0.0-alpha07' implementation 'androidx.compose.ui:ui-tooling-preview:1.0.0-alpha09' } public class ShoppingCartActivity extends AppCompatActivity implements LifecycleOwner { private LifecycleRegistry mLifecycleRegistry; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_shopping_cart); mLifecycleRegistry = new LifecycleRegistry(this); mLifecycleRegistry.handleLifecycleEvent(Lifecycle.Event.ON_CREATE); initShoppingCart(); } @Override public Lifecycle getLifecycle() { return mLifecycleRegistry; } private void initShoppingCart() { setContent { ShoppingCartScreen() } } } public class ShoppingCartViewModel extends ViewModel { private MutableLiveData<List<Product>> mProductsLiveData; public ShoppingCartViewModel() { mProductsLiveData = new MutableLiveData<List<Product>>(); loadProducts(); } public LiveData<List<Product>> getProductsLiveData() { return mProductsLiveData; } private void loadProducts() { } } @Composable fun ShoppingCartScreen(viewModel: ShoppingCartViewModel = viewModel()) { val products by viewModel.getProductsLiveData().observeAsState(emptyList()) LazyColumn { items(products) { product -> ProductItem(product) } } } @Composable fun ProductItem(product: Product) { }


上一篇:
下一篇:
切换中文