自从升级到最新的appcompat库以来,我在ViewUtils的日志中看到了一条消息.
app:theme is now deprecated. Please move to using android:theme instead.
我parent="Theme.AppCompat.Light.NoActionBar"用作我的主题父母.
我正在使用CoordinatorLayout来自的视图android.support.design.我想附加app:layout_behavior片段的RecyclerView?
在Google提供的示例中,它们仅将其附加到附加RecyclerView的相同XML文件中CoordinatorLayout.
有没有办法附加CoordinatorLayout到片段RecyclerView内ViewPager?
样品是在这个博客帖子在Android开发者博客.
android android-appcompat android-recyclerview android-design-library android-coordinatorlayout
我一直在尝试使用RecyclerView实现一个CollapsingToolbar,使用少量的指导:http://android-developers.blogspot.co.uk/2015/05/android-design-support-library.html和项目这里:https://github.com/chrisbanes/cheesesquare,我目前有以下布局:
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/main_content"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="@dimen/detail_backdrop_height"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
android:fitsSystemWindows="true">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
android:fitsSystemWindows="true"
app:theme="@style/Toolbar"
app:contentScrim="@color/primary"
app:expandedTitleMarginStart="48dp"
app:expandedTitleMarginEnd="64dp">
<ImageView
android:id="@+id/backdrop"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:fitsSystemWindows="true"
app:layout_collapseMode="parallax" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
app:theme="@style/Toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_collapseMode="pin" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
<android.support.design.widget.FloatingActionButton
android:layout_height="wrap_content"
android:layout_width="wrap_content"
app:layout_anchor="@id/appbar"
app:layout_anchorGravity="bottom|right|end"
android:src="@drawable/ic_directions"
android:layout_margin="@dimen/fab_margin"
android:clickable="true"/>
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
来源如下:
setContentView(R.layout.activity_details_image);
final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
loadImage();
CollapsingToolbarLayout collapsingToolbar =
(CollapsingToolbarLayout) findViewById(R.id.collapsing_toolbar); …Run Code Online (Sandbox Code Playgroud) 我的应用程序UI是使用Android支持库构建的,但目前没有AppCompat版本的(intederminate)进度条,我的应用程序确实需要它.
我宁愿不使用任何第三方库来实现材料设计进度条,所以我想知道是否有人知道为什么它不包含在支持库中,以及是否有任何迹象表明它到达(以及何时).
android android-appcompat android-progressbar android-support-library material-design
我正在为我的应用程序使用appcompat主题.需要知道我如何显示下划线到微调器.它只是显示锚.我尝试使用android:background设置下划线但它会使锚点消失.
在我将AppCompat-v7更改为21.0.0并且编译没有问题后,我的应用程序崩溃了.
它给了我错误:
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.app.ActionBar.setIcon(int)' on a null object reference
Run Code Online (Sandbox Code Playgroud)
在这条线上:
getActionBar().setIcon(R.drawable.ic_action_bar);
Run Code Online (Sandbox Code Playgroud)
它适用于AppCompat-v7 20.0.0,但不适用于21.0.0.
首先,我知道之前已经问过这个问题,但之前没有得到回答.我希望有人能给我一个答案.
在我的应用程序中,我使用Appcompat_v7(API 21)中的工具栏.这是我的代码:
<android.support.v7.widget.Toolbar
style="@style/DarkActionbarStyle"
android:id="@+id/toolBar"
android:layout_width="match_parent"
android:layout_height="@dimen/actionbar_height" />
Run Code Online (Sandbox Code Playgroud)
这是我使用的ToolBar样式:
<style name="DarkActionbarStyle" parent="@style/Widget.AppCompat.Toolbar">
<item name="android:background">?attr/colorPrimary</item>
<item name="titleTextAppearance">@style/ActionBarTitle</item>
<item name="android:elevation">2dp</item>
<item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
<item name="theme">@style/ThemeActionBarDark</item>
</style>
<style name="ThemeActionBarDark" parent="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<item name="actionBarItemBackground">@drawable/btn_dark_orange</item>
<item name="selectableItemBackground">@drawable/btn_dark_orange</item>
</style>
Run Code Online (Sandbox Code Playgroud)
问题是,提升前棒棒糖不起作用.所以我的问题是:棒棒糖设备上的工具栏下是否有阴影?
android toolbar shadow android-appcompat android-5.0-lollipop
我尝试从新的支持库22.2.0实现自动隐藏工具栏功能.没有SwipeRefreshLayout工作正常:

但是当我重新添加此布局时,工具栏重叠了recyclerview:

码:
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:fab="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_scrollFlags="scroll|enterAlways"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.SwipeRefreshLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/swipe_container"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:id="@+id/cardList"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="vertical"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
</android.support.v4.widget.SwipeRefreshLayout>
</android.support.design.widget.CoordinatorLayout>
</android.support.v4.widget.DrawerLayout>
Run Code Online (Sandbox Code Playgroud)
知道如何解决这个问题吗?
android android-appcompat swiperefreshlayout coordinator-layout
我从原来的ActionBar更改为AppCompat工具栏和setSupportActionBar(工具栏).当我使用getSupportActionBar()和setDisplayHomeAsUpEnabled(true)作为后退箭头时,单击从不调用onOptionsItemSelected或任何其他侦听器方法.
我必须为它实现一些特殊的监听器吗?一切都工作得很好.
编辑:初始化ActionBar:
mToolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(mToolbar);
mActionBar = getSupportActionBar();
mActionBar.setHomeButtonEnabled(true);
Run Code Online (Sandbox Code Playgroud)
在用Fragment替换内容后,我这样做:
mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
mDrawerToggle.setDrawerIndicatorEnabled(false);
mActionBar.setDisplayHomeAsUpEnabled(true);
Run Code Online (Sandbox Code Playgroud) android toolbar android-appcompat android-actionbar android-5.0-lollipop
谷歌已经表明,海拔效果显示在棒棒糖一些不错的方式在这里.
android:elevation="2dp"
Run Code Online (Sandbox Code Playgroud)
按钮,
android:stateListAnimator="@anim/button_state_list_animator"
Run Code Online (Sandbox Code Playgroud)
如何在没有第三方库的情况下模仿前Lollipop版本的高程效果?