小编pme*_*aho的帖子

Android数据绑定:如何传递变量以包含布局

谷歌文档说,变量可以从包含布局传递到包含布局的绑定,但我无法使其工作,但是获取数据绑定错误****msg:标识符必须具有XML文件中的用户定义类型.处理程序缺少它.包含XML看起来像这样:

<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:bind="http://schemas.android.com/apk/res-auto">

<data>
    <import type="com.example.FocusChangeHandler"/>

    <variable
        name="handler"
        type="FocusChangeHandler"/>
</data>

<!-- Some other views  --->

   <include
            android:id="@+id/inputs"
            layout="@layout/input_fields"
            bind:handler="@{handler}"/>        
</layout>
Run Code Online (Sandbox Code Playgroud)

包含的XML就像这样:

<layout xmlns:android="http://schemas.android.com/apk/res/android">
<EditText
   android:id="@+id/nameEdit"       
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"       
   android:onFocusChange="@{handler.onFocusChange}"/>
</layout>
Run Code Online (Sandbox Code Playgroud)

我能够通过生成的绑定类引用包含布局的视图,但传递变量不起作用.

android-databinding

17
推荐指数
3
解决办法
1万
查看次数

使用Dagger进行Android功能测试

我正在尝试用Mockito和Dagger测试一项活动 .我已经能够在我的应用程序中为Activity注入依赖项,但在测试Activity时,我无法向Activity注入mock.我应该注入Activity来测试还是让getActivity()创建它?

public class MainActivityTest extends
    ActivityInstrumentationTestCase2<MainActivity> {

@Inject Engine engineMock;
private MainActivity mActivity;
private Button mLogoutBtn;


public MainActivityTest() {
    super(MainActivity.class);
}

@Override
protected void setUp() throws Exception {
    super.setUp();

    // Inject engineMock to test
    ObjectGraph.create(new TestModule()).inject(this);
}

@Override
protected void tearDown() {
    if (mActivity != null)
        mActivity.finish();
}

 @Module(
 includes = MainModule.class,
 entryPoints = MainActivityTest.class,
 overrides = true
 )

static class TestModule {
    @Provides
    @Singleton
    Engine provideEngine() {
        return mock(Engine.class);
    }
}

@UiThreadTest
public void testLogoutButton() { …
Run Code Online (Sandbox Code Playgroud)

android dependency-injection functional-testing mockito dagger

12
推荐指数
2
解决办法
5379
查看次数