我有一个活动,它实现使用具有视差的标题图片和滚动内容的共用图案CoordinatorLayout,AppBarLayout和CollapsingToolbarLayout.我的xml布局如下所示:
<android.support.design.widget.CoordinatorLayout
    android:fitsSystemWindows="true"
    android:layout_height="match_parent"
    android:layout_width="match_parent">
    <android.support.design.widget.AppBarLayout
        android:fitsSystemWindows="true"
        android:id="@+id/appbar"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:theme="@style/AppTheme.AppBarOverlay">
        <android.support.design.widget.CollapsingToolbarLayout
            android:fitsSystemWindows="true"
            android:layout_height="wrap_content"
            android:layout_width="match_parent"
            app:contentScrim="?attr/colorPrimary"
            app:layout_scrollFlags="scroll|exitUntilCollapsed">
            <TextView
                android:background="@color/colorAccent"
                android:gravity="center"
                android:layout_height="250dp"
                android:layout_width="match_parent"
                android:text="ParallaxImage"
                app:layout_collapseMode="parallax"/>
            <android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_height="?attr/actionBarSize"
                android:layout_width="match_parent"
                app:layout_collapseMode="pin"
                app:popupTheme="@style/AppTheme.PopupOverlay"/>
        </android.support.design.widget.CollapsingToolbarLayout>
    </android.support.design.widget.AppBarLayout>
    <android.support.v4.widget.NestedScrollView
        android:id="@+id/content"
        android:layout_height="match_parent"
        android:layout_width="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior">
        <TextView
            android:layout_height="wrap_content"
            android:layout_margin="@dimen/text_margin"
            android:layout_width="wrap_content"
            android:text="@string/large_text"/>
    </android.support.v4.widget.NestedScrollView>
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
正如您在下面的gif动画中看到的,一切正常.您可以从内容NestedScrollView以及Toolbar视差或视差中滚动整个屏幕View.
谷歌推出了一个BottomSheetBehavior类(Android设计支持库23.2),以帮助开发人员实现Bottom表.我的带有Bottom工作表的xml布局如下所示:
<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true">
    <android.support.design.widget.AppBarLayout
        android:id="@+id/appbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fitsSystemWindows="true"
        android:theme="@style/AppTheme.AppBarOverlay">
        <!-- ommited …Run Code Online (Sandbox Code Playgroud) android android-coordinatorlayout android-collapsingtoolbarlayout android-appbarlayout bottom-sheet
假设我有一个可自由聚焦的自定义ViewGroup,并且有一些可以聚焦的子视图(Android机顶盒的自定义垂直菜单应该在远程控制器上作出反应).
每当自定义ViewGroup获得焦点时,我都需要将焦点传递给一些子视图.
我设置descendantFocusability为beforeDescendants并设置OnFocusChangeListener为自定义ViewGroup但OnFocusChangeListener.onFocusChanged()从未调用.它看起来像beforeDescendants我预期的那样不起作用.实际设置beforeDescendants工作与设置相同afterDescendants- 焦点由最近的子视图拍摄,自定义ViewGroup没有机会决定哪个子视图应该关注焦点.
我怎样才能达到理想的行为?在ViewGroups中处理焦点的最佳实践是什么?
我正在使用阿拉伯语版本的Android应用程序.
在其中一个接口中,我有gridView.因此,要以正确的顺序显示项目,我必须从右到左显示GridView中的项目(以及从顶部到底部的corse).为此,我尝试在GridView中添加这些属性:
android:gravity="right"
android:layout_gravity="right"
Run Code Online (Sandbox Code Playgroud)
不幸的是,项目仍然从左到右显示.
有什么想法以正确的方式做到这一点?
我们正在播放Widevine受保护的电影.我们的问题是媒体播放器在某些设备上崩溃.
我们知道"有问题"的Widevine支持,但有些设备,例如三星Galaxy Tab2 10.1 P5100,我们期望DRM应该工作.
我们有P5100用于测试,它完全适合我们,但客户有相同的设备(原始ROM,没有根),在他们的设备上我们的应用程序崩溃.有趣的是,这个问题并不适用于所有相同类型的设备,只适用于某些设备,这意味着在P5100上它可能会完美运行,但是例如你妻子的P5100没有.如果播放器崩溃,则它永远或永远发生,因此很容易模拟.
当然,即使是相同设备的类型也可能会有所不同,但仍然......看看我们从logcat获得的错误:
08-07 12:36:49.455  2901  3099 I DrmManagerClient: getErrorType return TYPE_PROCESS_DRM_INFO_FAILED becauseof widevine or STATUS_ERROR
08-07 12:36:49.455  2901  3099 E Clix  : [Activity_Player]::[DRM]::[TYPE_PROCESS_DRM_INFO_FAILED]
08-07 12:36:49.455  2901  2913 W DrmManagerClientImpl(Native): DrmManager server died!
08-07 12:36:49.455   118  3116 D HTTPBase: [4] Network BandWidth = 349 Kbps
08-07 12:36:49.455   118   328 W DrmManagerClientImpl(Native): DrmManager server died!
08-07 12:36:49.455   358   640 W DrmManagerClientImpl(Native): DrmManager server died!
08-07 12:36:49.462   102   102 I ServiceManager: service 'drm.drmManager' died
Run Code Online (Sandbox Code Playgroud)
我们的理解是,这个日志意味着本地Widevine进程在许可证获取处理期间死亡 - 看起来不同设备和固件版本的Widevine兼容性甚至在三星新设备上也不是最好的.
任何人都有同样的问题,可以帮助我们吗? …
android ×4
android-collapsingtoolbarlayout ×1
android-view ×1
arabic ×1
bottom-sheet ×1
drm ×1
focus ×1
gridview ×1
viewgroup ×1