草庐IT

android - 应该如何为具有多个字段的 Activity 实现 ViewModel

问题有一个设置屏幕(SettingsActivity),其中包含大约10个文本字段和3个按钮。在onClick上打开对话框以插入/编辑文本的文本字段将其内容保存在SharedPreferences中。这些按钮执行异步请求以检索内容并保存在其他地方。在请求期间,会显示一个对话框以通知进度。初步解决方案数据存储库基本上是SharedPreferences的包装器,它有10个getter和10个setter,每个字段一个。在get[field_name]上,DataRepository从SharedPreferences获取值,在set[field_name]上,它提交给SharedPref

c# - xamarin 广播接收器访问 View 模型

注意事项:Xamarin4.2.1.64,VisualStudio2015教授。我已经创建了一个跨平台应用程序,可以在扫描条形码的Android设备上运行。目前,当扫描时,软件有一个可选的输出模式(缓冲区、键盘、剪贴板和Intent)。目前正在使用键盘模式。流用户单击设备按钮扫描条形码,软件尝试转储到屏幕上的输入,如果不是,则改为选项卡(应用程序在启动时将焦点设置为输入字段)。单击应用程序上的按钮时,它会调用我的服务来查询一组数据并返回结果,然后更新结果列表以供用户查看。我需要改变的流程用户单击扫描条形码的设备按钮,只有这一次设备设置为Intent和广播,我的应用程序接收者接收广播,从

android - 将位置绑定(bind)到 MVVM 中的 MapView

只是想知道如何将纬度和经度绑定(bind)到com.google.android.gms.maps.MapView。感觉它没有公开任何布局属性。 最佳答案 我自己找到了答案。只需要创建带有@BindingAdapter注解的静态方法。像这样的东西:@BindingAdapter("app:latLong")publicstaticvoidbindLocationToMap(MapViewmapView,LatLnglatLong){CameraUpdatecameraUpdate=CameraUpdateFactory.newLat

Android MVVM 和 Intent

我在我的应用中使用了AndroidArch组件和MVVM架构。模型层和存储库类决定并将数据提供给View模型,然后是View层。如果要使用的数据Activity既不是来自网络也不是来自数据库,而是来自之前通过Intent的Activity怎么办?在这种情况下,您遵循什么模式? 最佳答案 将该数据传递给View模型并将其存储在那里。如果它只是一个id或部分内容,那么您可以从View模型调用模型层。 关于AndroidMVVM和Intent,我们在StackOverflow上找到一个类似的问

在哪里检查MVVM中的互联网连接的最佳场所在哪里?

我有一个apiClass这使所有网络都呼叫,我认为我的选择是这些:在内部进行检查activity/fragment在内部进行检查apiClient班级我敢肯定有更好的选择。编辑这个答案暗示了我的第二个选择。有更好的方法吗?看答案您可以在任何地方添加用于Internet连接的方法,但根据我的理解,对于代码/方法重复使用您可以创建UTIL类,也可以将其添加到应用程序类中。您也可以参考下面的方法。publicstaticbooleangetConnectionStatus(Contextcontext){ConnectivityManagermConnectivityManager;NetworkI

MVVM登录注册,登陆成功跳转到视频详情接口的运用与练习

packagecom.bw.daymvvm1211;importandroidx.lifecycle.Observer;importandroidx.recyclerview.widget.StaggeredGridLayoutManager;importcom.bw.daymvvm1211.adapter.FoodAdapter;importcom.bw.daymvvm1211.databinding.ActivityMainBinding;importcom.bw.daymvvm1211.entity.FoodEntity;importcom.bw.daymvvm1211.food.Foo

android - ViewModel 中的实例成员 LiveData 变量?

在使用Android几年后,我试图了解Android架构组件。阅读官方文档和一些博客后,让我感到困惑的一件事是在哪里创建LiveData变量。在下面的第一个变体中,我只在存储库类中创建了一个livedata变量,而在两个变体中的第二个变体中存储库和View模型类。两种变体都有效。第一个变体:publicclassScoreViewModelextendsAndroidViewModel{privateScoreRepositorDBscoreRepo;publicScoreViewModel(Applicationapplication){super(application);scor

android - 点击事件在MVVM架构中的位置

我正在尝试将MVVM与数据绑定(bind)一起使用。我应该在哪里编写点击事件(Viewmodel或Activity)欢迎举例... 最佳答案 您可以在其中任何一个上编写您的点击事件。就个人而言,我的偏好取决于我想要实现什么以及实现它需要什么。ClickeventinViewModel定义您的ViewModel。通过回调与您的Activity进行通信。publicclassMyViewModelextendsViewModel{privateMyCustomCallbackcallback;...publicvoiddoOnClick

android - Android MVVM按功能打包和按层打包哪个更好?

另一个“哪个更好”的问题,我知道这些是非常主观的。我对更好的定义是:被最好的开发团队使用最适合单元测试最模块化/最容易构建产品应用Google推荐的内容(这是我最困惑的地方)所有Android蓝图都使用按功能打包:https://github.com/googlesamples/android-architecture/tasks/addedittask/taskdetail以及所有架构组件示例使用逐层封装:https://github.com/googlesamples/android-architecture-components/db/model/ui/persistence我很

android - 架构组件 ViewModels 使用来自 Activity/Fragment 的参数注入(inject) Dagger

我正在尝试添加新的架构组件ViewModel到我的应用程序,同时用Dagger注入(inject)它们。我的代码基于谷歌显示的here.我试图避免出现ViewModelFactory对于每个ViewModel类型,所以我使用了ViewModelFactory收到Map,Provider>creators.它适用于ViewModels与@Singleton有依赖关系范围。然而,我的一个ViewModels具有来自fragment的依赖性。这是该fragment的模块:@ModulepublicabstractclassDownloadIssueDialogFragmentModule{@