草庐IT

9Presenter

全部标签

java - 在 MVP 中,onClick 是 View 还是 Presenter 的责任?

在MVP模式中,谁负责处理UI上的点击?例如。非MVP方法类似于:counterButton.setOnClickListener(newView.OnClickListener(){publicvoidonClick(Viewv){totalClicks++;counterTextView.setText("Totalclickssofar:"+totalClicks);}});使用MVP是onClickPresenter的责任吗?还是View可以处理?有人可以澄清一下吗? 最佳答案 OnClick应该调用Presenter方法。

java - 在 MVP 中,onClick 是 View 还是 Presenter 的责任?

在MVP模式中,谁负责处理UI上的点击?例如。非MVP方法类似于:counterButton.setOnClickListener(newView.OnClickListener(){publicvoidonClick(Viewv){totalClicks++;counterTextView.setText("Totalclickssofar:"+totalClicks);}});使用MVP是onClickPresenter的责任吗?还是View可以处理?有人可以澄清一下吗? 最佳答案 OnClick应该调用Presenter方法。

c# - MvxSidebarPresentationAttribute 未在 Presenter 字典中配置

UnhandledExceptionSystem.Collections.Generic.KeyNotFoundException:ThetypeMvxSidebarPresentationAttributeisnotconfiguredinthepresenterdictionaryMvvmCros5.6工具VisualStudio2015Windows8.1iPhone7模拟器iOS10.3代码菜单View[MvxFromStoryboard("Main")][MvxSidebarPresentation(MvxPanelEnum.Left,MvxPanelHintType.Pus

android - Kotlin 协程 : Switching context when testing an Android Presenter

我最近开始在我的Android项目中使用kotlin协程,但我在使用它时遇到了一些问题。许多人会称之为代码味道。我使用的是MVP架构,其中协程在我的演示器中像这样启动://WorklistPresenter.kt...overridefunloadWorklist(){...launchAsync{mViewModel.getWorklist()}...launchAsync函数是这样实现的(在我的WorklistPresenter类扩展的BasePresenter类中):@SynchronizedprotectedfunlaunchAsync(block:suspendCorouti

android - MVP + RxJava - 将调度器放在 Presenter 或 Interactor 中?

我正在使用MVP和RxJava开发Android应用程序。好吧,我有一个疑问:当我创建演示者和交互器时,我可以将调度程序放入演示者中,如下所示:Presenter中的调度程序主持人:overridefuntryLogin(username:String,password:String){mLoginInteractor.login(username,password).subscribeOn(Schedulers.newThread()).observeOn(AndroidSchedulers.mainThread()).subscribe(object:Subscriber(){[.

android - 如何在 moxy Presenter android 中获取上下文

如何从Moxy演示器获取Activity上下文?乍一看很简单……:1.在MvpView接口(interface)中添加ContextgetMvpActivity();,在Acivity中实现。2.在Presenter中调用getViewState().getMvpActivity()。但是Moxy不允许将非void方法添加到MvpView接口(interface)。请帮助我。附言我需要Presenter中的上下文来初始化App组件(activity是staticgetter的参数)。谢谢。抱歉有些语法错误。 最佳答案 正确的解决方案

Android Model-View-Presenter(MVP) 如何返回长时间运行的 AsyncTask

我是Android的新手,我正在编写一个应用程序。我已经到了开始更彻底地测试我的代码的地步,因此,我想实现MVP设计策略,因为它为代码添加了更多可测试层。我似乎无法理解使用MVP的假定好处之一是它如何在动态执行时帮助运行AsyncTasks。由于您想避免在Presenter类中使用任何Android特定组件,您应该如何引用使用AsyncTasks的Activity?关于MVP的教程显示了Presenter对象具有将Activity作为参数并返回给它的方法;但是,如果您的AsyncTask需要很长时间并且您的Activity已因旋转更改等原因而被破坏,您如何返回到正确的Activity?

android - MVP Presenter 未正确注入(inject)

我正在通过尝试转换一些MindorksadvancedMVPsample来同时学习Kotlin和Dagger2到Kotlin,但遇到Dagger2编译问题。我在这里上课游泳,但非常接近!不要介意这些不整洁,我打算在编译后梳理每个类。如果缺少什么,请告诉我。错误归结为我的演示者类没有被正确注入(inject)到Activity中。错误内容如下:e:D:\_Dev\repo\app\build\tmp\kapt3\stubs\debug\com\xxx\di\component\ActivityComponent.java:8:error:com.xxx.login.LoginMVP.Pr

android - MVP:如何从 Presenter 写入日志

我使用Mosby使用MVP模式构建应用程序。这是规则之一:Don'tuseandroidlibrarycodeinPresenter.但是如果我想从Presenter记录一些东西怎么办?我看到的唯一方法是使用System.out.println();但这听起来不太好。有什么想法吗? 最佳答案 不在Presenter中使用Android库代码的原因是,当您开始编写单元测试时,您的类中的Android代码没有依赖性,因此它可以直接在JVM上运行。如果您发现自己需要使用Android代码,那么我这样做的方法是将其隐藏在界面后面。这样,您就

android - 在带有 RxJava : How can you keep the presenter free of any android knowledge while still observing on the UI thread? 的 Android 上使用整洁的 MVP

为了使用mvp模式在android上实现“整洁”的架构,建议将android框架视为插件,并且不要将任何android感知依赖项泄漏到演示层中。使用rxjava,如果我有一个设计用于将数据“推送”到View层的演示器,我可能希望有这样的逻辑:publicinterfaceSearchPresenter{interfaceViewLayer{voidupdateResults(ListsearchResults)}voidbind(ViewLayerviewLayer);voidunbind();}publicclassSearchPresenterImplimplementsSearc