我有一个Chrome自定义标签,但我想在标题栏左上角的关闭(X)按钮中添加一个监听器。
我希望每次用户点击关闭按钮时都会触发回调。
我能够在网络视图中执行此操作,但无法确定是否可以使用Chrome自定义标签。
以下是我用来调用自定义标签的代码段:
CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder();
builder.enableUrlBarHiding();
builder.setToolbarColor(getTitleBarBackgroundColor());
builder.setStartAnimations(this, android.R.anim.slide_in_left, android.R.anim.slide_out_right);
builder.setExitAnimations(this, android.R.anim.slide_in_left, android.R.anim.slide_out_right);
customTabsIntent = builder.build();
customTabsIntent.intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
customTabsIntent.launchUrl(this, Uri.parse(url));
答案 0 :(得分:7)
对于不同用途的Chrome自定义标签关闭按钮自定义,已经有一些问题(here和here)。从Chrome自定义标签的当前实现,无法直接向Chrome自定义标签关闭按钮添加监听器。您只能customize the close button获取其图标。
<强>更新强>: 虽然您无法直接向Chrome自定义标签关闭按钮添加收听者,但您可以使用{custom {tag} {打开。但请记住,在这种情况下,无论Chrome自定义标签是否已通过关闭按钮或设备返回键关闭,都会调用回调。
答案 1 :(得分:0)
无法覆盖关闭按钮的行为。但是,如果您只想触发回调,例如跟踪关闭按钮上的点击次数,则可以在启动自定义选项卡的活动上使用onResume()
回调,因为调用者活动将作为结果恢复自定义选项卡被关闭。