TextInputLayout包含一个EditText,后者又接收来自用户的输入.使用Android设计支持库中引入的TextInputLayout,我们应该将错误设置为持有EditText而不是EditText本身的TextInputLayout.编写UI时,将只关注EditText而不是整个TextInputLayout,这可能导致键盘覆盖错误.在以下GIF通知中,用户必须先删除键盘才能看到错误消息.这与设置IME动作以使用键盘继续前进相结合会导致真正令人困惑的结果.
布局xml代码:
<android.support.design.widget.TextInputLayout
android:id="@+id/uid_text_input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:errorEnabled="true"
android:layout_marginTop="8dp">
<EditText
android:id="@+id/uid_edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:hint="Cardnumber"
android:imeOptions="actionDone"/>
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
Java代码将错误设置为TextInputLayout:
uidTextInputLayout.setError("Incorrect cardnumber");
Run Code Online (Sandbox Code Playgroud)
如何在用户没有看到错误消息的情况下确保错误消息可见?有可能移动焦点吗?
android android-layout android-design-library androiddesignsupport android-textinputlayout
我想更改我的零食栏的动作文字颜色,但由于某种原因它不起作用.
我使用以下代码显示快餐栏:
Snackbar.make(findViewById(R.id.root), "text", Snackbar.LENGTH_LONG).setActionTextColor(R.color.yellow).setAction("OK", new View.OnClickListener() {
@Override
public void onClick(View view) {
}
}).show();
Run Code Online (Sandbox Code Playgroud) android colors android-design-library android-snackbar androiddesignsupport
我正在尝试从新的设计支持库中实现功能,以创建一个视差滚动工具栏,它看起来类似于新的材料设计WhatsApp配置文件页面.但是,我无法在顶角显示溢出菜单和后退按钮.
我已尝试使用以下方法显示后退按钮,但它们都不起作用.
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);
Run Code Online (Sandbox Code Playgroud)
并且覆盖溢出菜单的onCreateOptionsMenu方法也不起作用.
有谁知道如何从设计支持库中将这些工具栏图标添加到CollapsingToolbar?下面是我的活动布局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:id="@+id/main_content"
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="256dp"
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: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:src="@drawable/headerbg"
android:scaleType="centerCrop"
android:fitsSystemWindows="true"
app:layout_collapseMode="parallax" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:popupTheme="@style/Theme.AppCompat.Light.DarkActionBar"
app:layout_collapseMode="pin" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="fill_vertical"
android:layout_marginBottom="?attr/actionBarSize"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
</android.support.v4.widget.NestedScrollView>
Run Code Online (Sandbox Code Playgroud)
android android-support-library material-design androiddesignsupport
我可以CollapsingToolbarLayout通过setTitle方法设置a的标题吗?
还有办法设置字幕吗?
这个问题的标题基本上都说明了一切.我收到错误:找不到app:layout_scrollflags来自CollapsingToolbarLayout的资源标识符.我使用eclipse并导入了设计库jar文件.我能够在我的类中使用设计支持布局,这是正确的
这是我使用的一段代码:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/activityBg"
tools:context=".MainActivity"
>
<android.support.design.widget.AppBarLayout
android:layout_height="wrap_content"
android:layout_width="match_parent">
<android.support.design.widget.CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<include
layout="@layout/toolbar"/>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
Run Code Online (Sandbox Code Playgroud)
示例:http://android-developers.blogspot.in/2015/05/android-design-support-library.html
android androiddesignsupport android-collapsingtoolbarlayout
所以我使用Android设计支持库提供的NavigationView

我似乎无法找到如何设计它的例子.
到目前为止,我有:
<android.support.design.widget.NavigationView
android:id="@+id/navigation_view"
android:layout_height="match_parent"
android:layout_width="wrap_content"
android:layout_gravity="start"
app:headerLayout="@layout/header"
app:menu="@menu/drawer"
app:itemTextColor="@color/black"
app:itemIconTint="@color/black"/>
Run Code Online (Sandbox Code Playgroud)
样式标题很容易,因为它在自己的xml布局下,但是主体是菜单资源文件而不是布局.
app:itemTextColor 改变文字颜色app:itemIconTint 更改图标颜色app:itemBackground 更改项目背景颜色那么如何设置
android android-support-library material-design navigationview androiddesignsupport
我已经实现了新的BottomNavigationView(com.android.support:design:25.0.0),并且不知道如何设置选择索引或MenuItemid(在我的情况下,默认情况下应该选择mid item).我担心现在没有这种可能性,因为它太原始了,但无论如何任何帮助都将受到赞赏.谢谢!
android selectedindex android-design-library androiddesignsupport bottomnavigationview
我有如下布局:
(工具栏,标题视图,文本视图,RecyclerView)
当我滚动recyclerview的项目时,我需要折叠标题.这样就可以在屏幕上看到"选择项目"和recyclelerview视图.
我看到工具栏正在折叠时的示例,但我总是需要工具栏.
我应该使用哪些布局/行为来完成这项工作?
android android-layout material-design androiddesignsupport android-coordinatorlayout
在Lollipop之前的设备上,升级到Support Library 23.2.0后,操作栏上的溢出菜单图标和后退按钮变为黑色.它们在升级之前是白色的(这是正确的颜色).
升级后,前Lollipop设备会显示错误的颜色,如溢出菜单图标所示:
sytle.xml中的主题(pre-v21/Lollipop):
Run Code Online (Sandbox Code Playgroud)<resources xmlns:android="http://schemas.android.com/apk/res/android" > <!--Used on the application level by the manifest.--> <style name="app_theme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="colorPrimary">@color/app_primary_colour</item> <item name="colorPrimaryDark">@color/app_primary_dark_colour</item> <item name="colorAccent">@color/app_accent_colour</item> <item name="android:windowBackground">@color/app_background</item> <item name="searchViewStyle">@style/custom_search_view_style</item> </style> <!--Used by activities.--> <style name="app_theme.NoActionBar"> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> </style> <!--TODO: What are these?--> <style name="app_theme.app_bar_overlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" /> <style name="app_theme.popup_overlay" parent="ThemeOverlay.AppCompat.Light" /> ... ... </resources>
更新:另请参阅此Google错误报告:https: //code.google.com/p/android/issues/detail?id = 201918
鉴于我正在使用这样的布局:
<android.support.design.widget.CoordinatorLayout
android:id="@+id/main_content"
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="@dimen/flexible_space_image_height"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:expandedTitleMarginEnd="64dp"
app:expandedTitleMarginStart="48dp"
app:statusBarScrim="@android:color/transparent"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
/>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/mainView"
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_width="70dp"
android:layout_height="70dp"
android:layout_marginBottom="20dp"
app:fabSize="normal"
app:layout_anchor="@id/appbar"
app:layout_anchorGravity="bottom|center_horizontal"
/>
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
这几乎是标准的Cheesesquare样本 - 除了FloatingActionButton,我想提升大约20dp.
但是,这不起作用.无论我使用边距,填充等 - 按钮将始终以锚点的边缘为中心,如下所示:

如何将FAB按预期向上移动20dp?