Articles of 数据绑定

自定义视图上的自定义侦听器的数据绑定

我正在尝试使用新的Android数据绑定库绑定自定义视图上的事件,但遇到了问题。 这是我的自定义视图的相关部分: public class SuperCustomView extends FrameLayout { private OnToggleListener mToggleListener; public interface OnToggleListener { void onToggle(boolean switchPosition); } public void setOnToggleListener(OnToggleListener listener) { mToggleListener = listener; } …/… } 我正在尝试使用此自定义视图并使用以下内容绑定onToggle事件: toggleStrokeLimitation是控制器上的一种方法: public void toggleStrokeLimitation(boolean switchPosition) { maxStrokeEnabled.set(switchPosition); } 编译时出现此错误: > java.lang.RuntimeException: Found data binding errors. ****/ data binding error ****msg:Cannot find the setter for […]

Kotlin 1.2.50要求baseFeatureInfoDir

当我用一个Android项目切换时 classpath ‘com.android.tools.build:gradle:3.2.0-alpha18′ 至 classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.50” 我遇到了 什么地方出了错: 在任务’:detector:kaptDebugKotlin’的配置中发现了一些问题。 目录’〜/ project / build / intermediates / feature_data_binding_base_feature_info / debug / dataBindingExportFeaturePackageIdsDebug / out’为属性’annotationProcessorOptionProviders指定$ kotlin_gradle_plugin。$ 0. $ 0.baseFeatureInfoDir’不存在。 为属性’databinding.baseFeatureInfoDir’指定的目录’〜/ project / build / intermediates / feature_data_binding_base_feature_info / debug / dataBindingExportFeaturePackageIdsDebug / out’不存在。 使用classpath ‘com.android.tools.build:gradle:3.1.3’它可以正常工作

android数据绑定unit testing错误无法解析数据绑定编译器选项。 PARAMS:

当我尝试为我的kotlin android项目设置unit testing时,我遇到了以下错误。 以前有人遇到过这种问题吗? 这已被标记为官方错误跟踪器上的错误 FAILURE:构建因exception而失败。 *出了什么问题:任务执行失败’:app:compileDebugUnitTestJavaWithJavac’。 > java.lang.RuntimeException:无法解析数据绑定编译器选项。 参数:kapt.annotations:/Users/trevor/Dev/Android/workspace/gitlab-example/app/build/tmp/kapt/debugUnitTest/wrappers/annotations.debugUnitTest.txt kapt.kotlin.generated:/ Users / trevor / Dev / Android / workspace / gitlab-example / app / build / tmp / kapt / debugUnitTest / kotlinGenerated *尝试:使用–info或–debug选项运行以获得更多日志输出。 *exception是:org.gradle.api.tasks.TaskExecutionException:任务执行失败’:app:compileDebugUnitTestJavaWithJavac’。 在org.gradle上的org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:84)org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:55)位于org.gradle.api.internal的org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)上的.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)位于org.gradle.api.internal.tasks.execution的org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:46).tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88) .skipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:51)org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTas 位于org.gradle.exe。执行(CatchExceptionTaskExecuter.java:34)的orE.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker $ 1.execute(DefaultTaskGraphExecuter)中的kExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43) .java:236)在org.gradle上的org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker $ 1.execute(DefaultTaskGraphExecuter.java:228)org.gradle.internal.Transformers $ 4.transform(Transformers.java:169)。 org.gradle.internal.progress.DefaultOperationExecutor.run(DefaultBuildOperationExecutor.java:61)中的internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:106)org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker.execute(DefaultTaskGraphExecuter。 java:228)org.gradle.execution.taskgraph.DefaultTaskGraphExecuter […]

如何将架构组件与Android上的数据绑定相结合?

我开发了基于android数据绑定库的应用程序: https : //developer.android.com/topic/libraries/data-binding/index.html class SignInViewModel extends BaseObservable { @Bindable public String getLogin() { return login; } @Bindable public String getPassword() { return password; } } 现在我想使用新库中的ViewModelProviders: https : //developer.android.com/topic/libraries/architecture/guide.html SignInViewModel signInViewModel = ViewModelProviders.of(this).get(SignInViewModel.class); 它如何结合? 任何想法? 或者应该结合这两个库? 编辑 我改为: class SignInViewModel extends ViewModel { public ObservableField login = new ObservableField(“”); public ObservableField password = new […]

我们如何为onCheckedChageListener事件的Switch按钮实现数据绑定?

问题表明,如何将已检查的更改侦听器绑定到xml中的“切换”按钮? 我没有使用回收站视图。 只是一个简单的布局。 任何帮助赞赏。

Android数据绑定后备/默认值

我正在使用Android数据绑定,效果很好: <TextView android:text="@{ee.Name}" … 但如果我这样做,Android Studio设计师不会显示任何文字。 没有文字我根本看不到TextView。 这是可以理解的,因为我还没有绑定数据。 是否存在可以显示的回退值或默认值,直到有真实数据?

使用Kotlin for Android进行数据绑定的问题

我正在尝试使用Kotlin为我的Android项目启用数据绑定。 我启用了Kotlin插件,但我无法启用数据绑定我不断收到以下错误 Error:(66, 0) Could not find method kapt() for arguments [com.android.databinding:compiler:2.0.0-beta6] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler 我的gradle文件中有数据绑定的以下依赖项 dependencies { … kapt ‘com.android.databinding:compiler:2.0.0-beta6’ } kapt { generateStubs = true }

数据绑定错误:只允许一个布局元素和一个数据元素。

我在使用数据绑定和包含标签时遇到以下错误: Error:Execution failed for task ‘:app:dataBindingProcessLayoutsBetaDebug’.>data binding error msg:Only one layout element and one data element are allowed. [path to file] has 3file:[path to file]****\ data binding error **** 这是我的布局文件: […] […] 在每个包含的布局中,我有这样的东西: […] 从这个回复: Android数据绑定使用包含标签我想我的代码是正确的,为什么数据仓认为我在文件中使用多个单一标签?

升级Android Studio 2.3后,DataBinding无法正常工作

DataBinding在我的项目中运行得非常好,但是在今天升级Android Studio 2.3之后。 运行’app’失败,因为以下错误: Error:(15, 40) Error: package com.javan.myrecorder.databinding not exist. import com.javan.myrecorder.databinding.FragmentEventsBinding; :app:compileMockDebugJavaWithJavac FAILED 我只是升级android studio并没有改变任何东西。 所有插件都是最新的! 现在我的问题是,为什么会出现这个错误,我怎么能解决它? 欢迎任何帮助! 英语不是我的母语; 请原谅我的任何错误。 EDIT1 像android项目googlesamples / android-architecture git checkout todo-databinding 然后运行./gradlew assembleDebug进行构建,构建因以下错误而失败: 完整的构建日志 EDIT2 我已经修复了这个问题,因为在升级到Gradle 2.3后,数据绑定已经破坏 。 在build.gradle(app)添加 apply plugin: ‘com.android.application’ apply plugin: ‘com.neenbedankt.android-apt’ ..balabala dependencies { apt ‘com.android.databinding:compiler:2.3.0’ } 我项目中的一些文件: gradle-wrapper.properties #Mon Mar 06 10:59:04 […]

Android数据绑定:RecyclerView适配器的可观察列表

通过使用新数据绑定库和MVVM模式中的ObservableList类来避免使用Adapter类中的”notifyItem(s)…”方法,它们是一种方法吗? 或者如果不是,将ObservableList绑定到RecyclerView最简单方法是什么? 感谢任何线索!