robobinding 怎么刷radio绑定radiobuttom

Android MVVM框架RoboBinding初探 - 推酷
Android MVVM框架RoboBinding初探
今年在HTML5开发中使用AngularJS框架,觉得MVVM的框架太方便了,双向绑定机制省去了很多繁琐的工作,于是想在新的Android项目也引入类似的MVVM框架,提高团队的开发效率和代码的工程化程度,然后就找到了
RoboBinding这个框架,简单看了下感觉应该还算靠谱。
RoboBinding是一个实现了数据绑定&
) 模式的Android开源框架。MVVM模式是MVC模式的重要更新,使得项目结构更加的优美,易于维护以及方便于测试。这也是为什么几个主流的语言都有相应的MVVM框架实现如
,JavaFX以及Flex。
在没有性能损失的前提下(使用AspectJ字节码生成来替代Java反射),RoboBinding 帮助你编写更可读,易于测试与维护的UI代码。框架具备以下优点:
通过绑定移除 -&
大量不必要的代码(如addXXListener(),findViewById()等)
难于测试的Android代码以及运行过久且不切实际的Android单元测试
&PresentationModels
及其普通的JUnit单元测试。
提供对象类型Cursor来替换 -&
关系类型Cursor,因为我们已经习惯于操作对象
可以很容易的为任何自定义组件,第三方组件或Android widget编写属性绑定实现,简化代码,使项目易于维护。
从简单的角度看,他移除了如
addXXListener(),findViewById()
这些不必要的代码,连如BufferKnife那样的InjectView都不需要,因为你的代码一般不需要依赖于这些界面组件信息。下面以一个最简单的
LinearLayout
xmlns:android
&/apk/res/android&
xmlns:tools
xmlns:bind
&http://robobinding.org/android&
android:text
&Say Hello&
bind:onClick
&sayHello&
LinearLayout
Presentation Model:
PresentationModel
AbstractPresentationModel {
String getHello() {
&: hello Android MVVM(Presentation Model)!&
sayHello() {
firePropertyChange(
Activity将layout与对应的presentation model绑定在一起。
MainActivity
Activity {
onCreate(Bundle savedInstanceState) {
PresentationModel presentationModel =
PresentationModel();
View rootView = Binders.inflateAndBindWithoutPreInitializingViews(
, R.layout.activity_main, presentationModel);
setContentView(rootView);
这样layout的{hello}与PresentationModel.hello绑定,layout的sayHello与PresenationModel.sayHello方法绑定。我们不需要在Layout中定义TextView, Button的Id因为我们不关心,且没有必要。当我们进一步观察时,我们发现PresentationModel是一个Pure POJO。这也是为什么软件界的泰斗Martin Fowler在2004年,提出了Presenation Model(MVVM) 模式。它是我们所熟悉的MVC的升级,进一步的把界面状态与逻辑解藕到Presentation Model中。我们可以通过以下几个示例项目学习RoboBinding使用,他们都可以直接导入Android Studio无需额外配置:
,最小的RoboBinding使用例子。
,是Martin Fowler的Presentation Model模式原始例子基于RoboBinding的Android翻译版本。
,是用于展示RoboBinding的各种特性的使用包含Fragment, Menu, ViewPager等。
项目的中文文档地址是:http://robobinding.github.io/RoboBinding/index.zh.html
项目主页:
已发表评论数()
&&登&&&陆&&
已收藏到推刊!
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见Android数据绑定框架 RoboBinding_Linux软件_Linux公社-Linux系统门户网站
你好,游客
Android数据绑定框架 RoboBinding
运行环境:
授权方式:BSD
软件大小:M
更新日期:
来源地址:
联系作者:Linux
RoboBinding是一个实现了数据绑定&(MVVM) 模式的开源框架。从简单的角度看,他移除了如addXXListener(),findViewById()这些不必要的代码,连如果BufferKnife那样的InjectView都不需要,因为你的代码一般不需要依赖于这些界面组件信息。下面以一个最简单的为例。
&LinearLayout xmlns:android=""& & xmlns:tools=""& & xmlns:bind=""&& & &TextView& & & & bind:text="{hello}" /&& & & & ...& & &Button& & & & android:text="Say Hello"& & & & bind:onClick="sayHello"/&&/LinearLayout&
Presentation Model:
public class PresentationModel extends AbstractPresentationModel {& & private S& & public String getHello() {& & & & return name + ": hello Android MVVM(Presentation Model)!";& & }& & ...& & public void sayHello() {& & & & firePropertyChange("hello");& & }}
Activity将layout与对应的presentation model绑定在一起。
public class MainActivity extends Activity {& & @Override& & protected void onCreate(Bundle savedInstanceState) {& & & & ...& & & & PresentationModel presentationModel = new PresentationModel();& & & & View rootView = Binders.inflateAndBindWithoutPreInitializingViews(this, R.layout.activity_main, presentationModel);& & & & setContentView(rootView);& & }}
这样{hello}与PresentationModel.hello绑定,sayHello与PresenationModel.sayHello方法绑定。我们不需要在Layout中定义TextView, Button的Id因为我们不关心,且没有必要。当我们进一步观察时,我们发现PresentationModel是一个Pure POJO。这也是为什么软件界的泰斗Martin Fowler在2004年,提出了Presenation Model(MVVM) 模式。它是我们所熟悉的MVC的升级,进一步的把界面状态与逻辑解藕到Presentation Model中。
相关资讯  &
图片资讯 & & &
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款首先恭喜成为最流行的Android native MVVM框架。
RoboBinding是一个实现了数据绑定 () 模式的Android开源框架。MVVM模式是MVC模式的重要更新,使得项目结构更加的优美,易于维护以及方便于测试。这也是为什么几个主流的语言都有相应的MVVM框架实现如, ,JavaFX以及Flex。
项目的地址也入门介绍:
框架首页 -&/RoboBinding/RoboBinding
入门文档 - http://robobinding.github.io/RoboBinding/getting_started.zh.html
介绍视频 - /watch?v=2sSBVaX77xA
RoboBinding QQ群:
RoboBinding除了帮助你组织优美的项目结构外,大大的减少了你的应用UI部分代码量,应该能少50%。不像其它的框架,RoboBinding只专注于MVVM模式。
RoboBinding
注重代码质量,拥有完整的测试集以及自动化测试与发布(基于Cloudbees)。保证项目的健康,可持续的发展。通过简单的几个步骤你就可以搭建起
RoboBinding源代码项目,开始贡献于RoboBinding。你可以享受优秀代码带给你的乐趣以及软件开发的艺术。请从开始你的贡献之旅。
本次版本0.8.6更新如下:
更新了以AspectJ方式实现Presentation Model。现在要调用像方法firePropertyChange("propertyName"),需要显示定义一个PresentationModelChangeSupport成员变量。
对Proguard配置进行了小的更新。
更新了JavaDocs,只包含公共的APIs。
更新了所有的项目,都使用Gradle构建方式。
将Robolectric升级到版本2.3。今年在HTML5开发中使用AngularJS框架,觉得MVVM的框架太方便了,双向绑定机制省去了很多繁琐的工作,于是想在新的Android项目也引入类似的MVVM框架,提高团队的开发效率和代码的工程化程度,然后就找到了RoboBinding这个框架,简单看了下感觉应该还算靠谱。RoboBinding是一个实现了数据绑定&Presentation Model(MVVM) 模式的Android开源框架。MVVM模式是MVC模式的重要更新,使得项目结构更加的优美,易于维护以及方便于测试。这也是为什么几个主流的语言都有相应的MVVM框架实现如Microsfot WPF,&Silverlight,JavaFX以及Flex。在没有性能损失的前提下(使用AspectJ字节码生成来替代Java反射),RoboBinding 帮助你编写更可读,易于测试与维护的UI代码。框架具备以下优点:通过绑定移除 -&大量不必要的代码(如addXXListener(),findViewById()等)。将 -&难于测试的Android代码以及运行过久且不切实际的Android单元测试- 变为&pojo&PresentationModels及其普通的JUnit单元测试。提供对象类型Cursor来替换 -&关系类型Cursor,因为我们已经习惯于操作对象。可以很容易的为任何自定义组件,第三方组件或Android widget编写属性绑定实现,简化代码,使项目易于维护。从简单的角度看,他移除了如addXXListener(),findViewById()这些不必要的代码,连如BufferKnife那样的InjectView都不需要,因为你的代码一般不需要依赖于这些界面组件信息。下面以一个最简单的AndroidMVVM为例。Layout:?&LinearLayoutxmlns:android=&/apk/res/android&xmlns:tools=&/tools&xmlns:bind=&http://robobinding.org/android&&&TextViewbind:text=&{hello}&/&...&Buttonandroid:text=&Say Hello&bind:onClick=&sayHello&/&&/LinearLayout&Presentation Model:?publicclassPresentationModel extendsAbstractPresentationModel {privateSpublicString getHello() {returnname + &: hello Android MVVM(Presentation Model)!&;}...publicvoidsayHello() {firePropertyChange(&hello&);}}Activity将layout与对应的presentation model绑定在一起。?publicclassMainActivity extendsActivity {@OverrideprotectedvoidonCreate(Bundle savedInstanceState) {...PresentationModel presentationModel = newPresentationModel();View rootView = Binders.inflateAndBindWithoutPreInitializingViews(this, R.layout.activity_main, presentationModel);setContentView(rootView);}}这样layout的{hello}与PresentationModel.hello绑定,layout的sayHello与PresenationModel.sayHello方法绑定。我们不需要在Layout中定义TextView, Button的Id因为我们不关心,且没有必要。当我们进一步观察时,我们发现PresentationModel是一个Pure POJO。这也是为什么软件界的泰斗Martin Fowler在2004年,提出了Presenation Model(MVVM) 模式。它是我们所熟悉的MVC的升级,进一步的把界面状态与逻辑解藕到Presentation Model中。我们可以通过以下几个示例项目学习RoboBinding使用,他们都可以直接导入Android Studio无需额外配置:1.AndroidMVVM,最小的RoboBinding使用例子。2.Album Sample,是Martin Fowler的Presentation Model模式原始例子基于RoboBinding的Android翻译版本。3.Gallery,是用于展示RoboBinding的各种特性的使用包含Fragment, Menu, ViewPager等。项目的中文文档地址是:http://robobinding.github.io/RoboBinding/index.zh.html项目主页:http://www./lib/view/home/6
无相关信息}

我要回帖

更多关于 robobinding 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信