Questions tagged «android-design-library»

设计包提供API,以支持向您的应用程序添加材料设计组件和模式。

2
使用AppBarLayout的重叠滚动视图
我想通过Material design滚动技术实现“具有重叠内容的灵活空间”模式,如本视频所示: 我的XML布局现在看起来像: <android.support.design.widget.CoordinatorLayout android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="192dp" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:layout_width="match_parent" android:layout_height="match_parent" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <android.support.v7.widget.Toolbar android:layout_height="?attr/actionBarSize" android:layout_width="match_parent" 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" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <....> </LinearLayout> </android.support.v4.widget.NestedScrollView> </android.support.design.widget.CoordinatorLayout> 使用设计库是否有一种简单的方法来完成此任务?还是我必须构建自定义的CoordinatorLayout.Behavior才能做到这一点?

16
在用户专注于此之前,TextInputLayout不显示EditText提示
我正在使用最近发布的Android设计支持库来显示带有EditTexts的浮动标签。但是我面临的问题是,呈现UI时,EditText上的提示不显示,但是当我专注于EditTexts之后,我看到了提示。 我的布局如下: <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent"> <ScrollView android:id="@+id/ScrollView01" android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbars="vertical"> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin"> <android.support.design.widget.TextInputLayout android:id="@+id/name_et_textinputlayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/activity_vertical_margin"> <EditText android:id="@+id/FeedBackerNameET" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="@string/feedbackname" android:inputType="textPersonName|textCapWords" /> </android.support.design.widget.TextInputLayout> <android.support.design.widget.TextInputLayout android:id="@+id/email_textinputlayout" android:layout_width="match_parent" android:layout_height="wrap_content"> <EditText android:id="@+id/FeedBackerEmailET" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="@string/feedbackemail" android:inputType="textEmailAddress" /> </android.support.design.widget.TextInputLayout> <Spinner android:id="@+id/SpinnerFeedbackType" …

22
如何将支持库的快餐栏文本颜色设置为android:textColor以外的颜色?
因此,我开始在设计支持库中使用新的Snackbar,但是我发现,当您在主题中定义“ android:textColor”时,它将应用于快餐栏的文本颜色。如果您的主要文字颜色为深色,这显然是一个问题。 有谁知道解决这个问题的方法或对我应该如何为文本上色的建议? 编辑2017年1月:(后答案) 虽然有一些自定义解决方案可以解决以下问题,但是最好提供正确的主题小吃店方法。 首先,您可能根本不应android:textColor在主题中进行定义(除非您真的知道使用主题的范围)。这设置了基本上每个连接到主题的视图的文本颜色。如果要在非默认视图中定义文本颜色,请android:primaryTextColor在自定义视图中使用并引用该属性。 但是,要将主题应用到Snackbar,请参考第三方材料doc上的本质量指南:http : //www.materialdoc.com/snackbar/(遵循编程主题实现以使其不依赖xml样式) 以供参考: // create instance Snackbar snackbar = Snackbar.make(view, text, duration); // set action button color snackbar.setActionTextColor(getResources().getColor(R.color.indigo)); // get snackbar view View snackbarView = snackbar.getView(); // change snackbar text color int snackbarTextId = android.support.design.R.id.snackbar_text; TextView textView = (TextView)snackbarView.findViewById(snackbarTextId); textView.setTextColor(getResources().getColor(R.color.indigo)); // change snackbar …

7
什么是CoordinatorLayout?
刚刚查看了新的Android支持设计库的演示应用程序。由Chris Banes在github上提供。在整个应用程序中,CoordinatorLayout已大量使用。此外,许多支持设计库类如FloatingActionButton,SnackBar,AppBarLayout等不同的行为时使用的内部CoordinatorLayout。 有人可以说明什么是什么CoordinatorLayout以及它与ViewGroupandroid中其他系统有何不同,或者至少提供正确的学习途径CoordinatorLayout。

16
Android多行小吃店
我正在尝试利用SnackbarAndroid设计支持库中的新功能来显示多行快餐栏,如http://www.google.com/design/spec/components/snackbars-toasts.html#snackbars-toasts-specs所示: import android.support.design.widget.Snackbar; final String snack = "First line\nSecond line\nThird line"; Snackbar.make(mView, snack, Snackbar.LENGTH_LONG).show(); 它仅显示First line...在我的Nexus 7上。如何使其显示所有行? PS:我尝试过Toast,它显示了所有行。


2
NavigationView和自定义布局
我正在使用这样的设计支持库NavigationView: <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/drawer_layout" android:layout_height="match_parent" android:layout_width="match_parent" android:fitsSystemWindows="true"> <!-- put your main layout here --> <include layout="@layout/drawer_main_layout"/> <android.support.design.widget.NavigationView android:id="@+id/nav_view" android:layout_height="match_parent" android:layout_width="wrap_content" android:layout_gravity="start" android:fitsSystemWindows="true" app:headerLayout="@layout/nav_header" app:menu="@menu/drawer_view"/> </android.support.v4.widget.DrawerLayout> 我已经设置了这个菜单: <menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android:checkableBehavior="single"> <item android:id="@+id/nav_home" android:icon="@drawable/ic_dashboard" android:title="Home" /> <item android:id="@+id/nav_messages" android:icon="@drawable/ic_event" android:title="Messages" /> <item android:id="@+id/nav_friends" android:icon="@drawable/ic_headset" android:title="Friends" /> <item android:id="@+id/nav_discussion" android:icon="@drawable/ic_forum" android:title="Discussion" …

12
小吃店解散后如何通知我?
我正在使用com.android.support:design:22.2.0图书馆的小吃店。我正在使用它撤消删除操作。为了使我的生活更轻松,我将使UI看起来好像实际上已从数据源中删除了东西,并且如果未按下小吃栏中的撤消按钮,则实际上是从数据源中执行删除。因此,我想知道小吃栏何时不再可见,因此可以安全删除这些项目。 我可以在Snackbar上调用getView(),但是我不确定应该使用哪个侦听器。我试过了,setOnSystemUiVisibilityChangeListener()但是那没用,我相信这只是针对系统状态栏的。 另外,Snackbar无法扩展,因为它具有私有构造函数。



15
如何在NavigationView中为项目设置自定义字体?
使用new NavigationView,我们可以通过XML中的菜单资源来设置抽屉的项目。 这样,我们可以为每个项目设置类似 <item android:id="@+id/drawer_my_account" android:icon="@drawable/ic_my_account" android:title="@string/drawer_my_account" /> 但是现在,我想为抽屉中的每个项目设置一个自定义字体,而我找不到通过XML或Java代码实现自定义字体的方法。有办法吗?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.