小编brw*_*dev的帖子

如何更改ImageCardView上信息区域的背景颜色?

我正在尝试在选择卡时更改 Android Leanback Library中ImageCardView上infoArea的背景颜色.目前我尝试过的是改变OnItemViewSelectedListener中的背景.这会更改背景,但不会清除以前选择的项目.

private final class ItemViewSelectedListener implements OnItemViewSelectedListener {
        @Override
        public void onItemSelected(Presenter.ViewHolder itemViewHolder, Object item,
                                   RowPresenter.ViewHolder rowViewHolder, Row row) {
            if (item instanceof Video) {
                mBackgroundURI = ((Video) item).getBackgroundImageURI();
                startBackgroundTimer();
                ((ImageCardView) itemViewHolder.view)
                        .setInfoAreaBackgroundColor(getResources().getColor(R.color.dark_blue_grey));
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

我想实现这样的目标:

期望的效果

有任何想法吗?谢谢.

android android-tv leanback

9
推荐指数
2
解决办法
2153
查看次数

使用Espresso识别意图时出错

我有两个应用程序通过意图相互交互.我想,以验证假设应用一个正确调用startActivity应用B没有实际启动应用B.我尝试了各种组合,intendingEspresso仍然通过意图启动App B,而不仅仅是将其删除.这会导致其余测试失败,因为App B阻止了UI .有任何想法吗?

@RunWith( AndroidJUnit4.class )
@LargeTest
public class MyActivityUiIntentsTest
{

    @Rule
    public IntentsTestRule<MyActivity> activityRule =
            new IntentsTestRule<>( MyActivity.class, true, false );

    @Test
    public void shouldStartOtherActivityWhenButtonClicked ()
    {
        Intents.init();
        intending( toPackage( "my.package" ) )
            .respondWith( new ActivityResult( Activity.RESULT_OK, null ) );

        activityRule.launchActivity( new Intent() );

        onView( withId( R.id.viewId ) ).perform( click() );
        intended( hasComponent( hasShortClassName( "the.other.class.name" ) ) );

        Intents.release();
    }
}
Run Code Online (Sandbox Code Playgroud)

更新:代码onClick …

android android-intent android-espresso

9
推荐指数
1
解决办法
1106
查看次数

自定义拒绝.gsp 样式未渲染

我正在使用 spring-security-core 插件,并在/views/login/denied.gsp下创建了一个自定义的Denied.gsp页面。如果我直接通过/login/denied进入该页面,我可以看到布局已应用。但是,如果我尝试访问受限页面并且被路由到拒绝的.gsp,它只会呈现确切的 html,而不处理布局。

<html><head>
        <title>Denied</title>
        <meta name="layout" content="main">
    </head>
    <body>
        <section class="breadcrumb p07">
            <p><a href="/">Home</a> Denied</p>
        </section>
        <section class="content">
            <p>Sorry, you're not authorized to view this page.</p>
        </section>

</body></html>
Run Code Online (Sandbox Code Playgroud)

我将这些设置为 false,以便默认情况下不会锁定所有内容:

grails.plugin.springsecurity.rejectIfNoRule = false
grails.plugin.springsecurity.fii.rejectPublicInvocations = false
Run Code Online (Sandbox Code Playgroud)

管理员控制器:

@Secured(['ROLE_ADMIN'])
class AdminController {

    def index() { 

    }
}
Run Code Online (Sandbox Code Playgroud)

例如,我以 ROLE_USER 身份登录,然后转到 /admin,它正确地拒绝了我。然而,它的页面上没有样式。

没有关于 css、js 等的附加规则。

我不明白为什么在这种情况下不应用样式。有任何想法吗?

css grails layout spring-security gsp

5
推荐指数
1
解决办法
1416
查看次数

Swagger UI 是否支持 @PathVariable 绑定?

目前,当我正在测试GET的 Swagger UI 时请求(将“id”路径变量绑定到数据对象)时,“id”字段的数据类型是 Model,而不是 Long。

例如,这是 RestController 中的方法:

@RequestMapping(value = "/{id}", method = GET)
    public AwardVO getAwardById(@PathVariable("id") Award award) {
        LOG.info("inside the get award method: "+award);
        if (award == null) {
            throw new AwardNotFoundException();
        }

        return new AwardVO(award);
    }
Run Code Online (Sandbox Code Playgroud)

这是生成的文档:

招摇用户界面示例

因此,当我将 Long 传递到输入字段时,我没有收到所需的记录。Swagger 是否支持这种类型的绑定,或者我是否只需要查找记录并将 PathVariable 作为 Long 传递?

Swagger版本:编译“com.mangofactory:swagger-springmvc:0.9.5”

Swagger配置:

@Configuration
@EnableSwagger
public class SwaggerConfig extends WebMvcConfigurerAdapter {

    private SpringSwaggerConfig springSwaggerConfig;

    @Autowired
    public void setSpringSwaggerConfig(SpringSwaggerConfig springSwaggerConfig) {
        this.springSwaggerConfig = springSwaggerConfig;
    }

    @Bean
    public SwaggerSpringMvcPlugin customImplementation() { …
Run Code Online (Sandbox Code Playgroud)

spring swagger swagger-ui spring-boot

5
推荐指数
1
解决办法
6491
查看次数

嵌套RecyclerView的Espresso Matcher

所以这是我的层次结构的细分:

RecyclerView --> LinearLayout --> RecyclerView --> FrameLayout -> FrameLayout 
Run Code Online (Sandbox Code Playgroud)

这是一个截图:

布局

我希望能够验证FrameLayout显示的文本.这是我到目前为止所尝试的:

onView(withRecyclerView(R.id.container_list).atPositionOnView(0, R.id.row_content))
                .check(matches(withRecyclerView(R.id.row_content).atPositionOnView(0, R.id.info_field)))
                .check(matches(isDisplayed()));
Run Code Online (Sandbox Code Playgroud)

但它导致了AmbiguousViewMatcherException.关于如何验证嵌套视图的任何想法?应该提到我从这里使用ViewMatcher .谢谢.

android ui-testing android-espresso android-recyclerview

4
推荐指数
1
解决办法
1833
查看次数

如何在我的Realm迁移代码中指定一个盒装字段可以为空?

我正在使用Kotlin,我想在a中添加一个新字段RealmObject,该字段可以为空.这是我在迁移中的内容:

val schema = realm.schema.get(ZOLA_NOTIFICATION)
if (!(schema?.hasField("agentId") ?: false)) {
    schema.addField("agentId", Long::class.java)
}
Run Code Online (Sandbox Code Playgroud)

但是,运行此迁移时收到错误消息:

Non-fatal Exception: io.realm.exceptions.RealmMigrationNeededException
Field 'agentId' does not support null values in the existing Realm file. Either set @Required, use the primitive type for field 'agentId' or migrate using RealmObjectSchema.setNullable().
Run Code Online (Sandbox Code Playgroud)

如何Long::class.java在迁移代码中指定应该是可空类型?

android realm kotlin

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

对于 Firebase 动态链接,utmParameters 始终为空

我使用 Firebase 控制台创建了多个带有 UTM 参数的动态链接。然而,utmParameters田野始终是空的。

intent收到 UTM 参数时,UTM 参数已被剥离。我们希望使用这些参数在应用程序中进行额外的跟踪和决策。

你知道这里可能出了什么问题吗?谢谢

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)

    Firebase.dynamicLinks
        .getDynamicLink(intent)
        .addOnSuccessListener(this) { pendingDynamicLinkData ->
            var deepLink: Uri? = null
            if (pendingDynamicLinkData != null) {
                deepLink = pendingDynamicLinkData.link

                Timber.tag("XXX").d("UTM :${pendingDynamicLinkData.utmParameters}")
            }
        }
        .addOnFailureListener(this) { e -> Timber.e(e, "Failed to process Dynamic Link") }
}
Run Code Online (Sandbox Code Playgroud)

android event-tracking firebase-analytics firebase-dynamic-links

1
推荐指数
1
解决办法
1461
查看次数