具有扩展工具栏的Android材质

具有扩展工具栏的Android材质,第1张

概述我正在测试材料设计,我正在使用扩展工具栏开发应用程序.我的应用程序非常简单:主要活动扩展了ActionBarActivity,我的布局如下:<LinearLayoutxmlns:android="http://schemas.android.com/apkes/android"xmlns:tools="http://schemas.android.comools"android:layout

我正在测试材料设计,我正在使用扩展工具栏开发应用程序.我的应用程序非常简单:主要活动扩展了ActionBaractivity,我的布局如下:

<linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"    xmlns:tools="http://schemas.androID.com/tools"    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent"    tools:context=".WeatherActivity"    androID:orIEntation="vertical">    <androID.support.v7.Widget.Toolbar        xmlns:app="http://schemas.androID.com/apk/res-auto"        androID:ID="@+ID/my_toolbar"        androID:layout_height="128dp"        popuptheme="@style/ActionbarPopupthemeOverlay"        androID:layout_wIDth="match_parent"        androID:minHeight="?attr/actionbarSize"        androID:background="?attr/colorPrimary" />    <TextVIEw        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:textcolor="@androID:color/white"        androID:text="@string/location_placeholder"        androID:textAlignment="vIEwStart"        androID:layout_gravity="start"        /></linearLayout>

现在我想将标题显示为当前位置.我注意到的第一件事是在我的AndroID模拟器(API 18)中,标题似乎不符合关于左边距底边距的材料指南,它出现在左侧并垂直输入工具栏内.我应该使用工具栏标题(toolbar.setTitle)还是其他什么?
其次,如果我想创建更复杂的东西,如标题和简短的描述(如布局结构中的材料指南所示),我的布局应该是什么?
谢谢您的支持!

解决方法:

确定您的活动扩展了ActionBaractivity,因此您还必须确保此活动的主题是theme.AppCompat.NoActionbar或theme.AppCompat.light.NoActionbar的子主题.如果您没有使用theme.AppCompat变体,那么您也可以在主题中添加以下行:

<item name="androID:windowNoTitle">true</item>    <item name="windowActionbar">false</item> 

然后,您需要做的就是将工具栏添加到您的布局(它看起来像您已经拥有):

<androID.support.v7.Widget.Toolbar    xmlns:app="http://schemas.androID.com/apk/res-auto"    androID:ID="@+ID/my_toolbar"    androID:layout_height="128dp"    popuptheme="@style/ActionbarPopupthemeOverlay"    androID:layout_wIDth="match_parent"    androID:minHeight="?attr/actionbarSize"    androID:background="?attr/colorPrimary" />

然后在您的活动中通过setSupportActionbar将工具栏设置为您的Actionbar:

    Toolbar mToolbar = (Toolbar) findVIEwByID(R.ID.my_toolbar);    setSupportActionbar(mToolbar);

最后一部分是所有魔术发生的地方,因为你说“AndroID,使用这个工具栏小部件并使用它完全如何使用SupportActionbar”.这意味着如果你想设置标题/副标题,你需要做的就是调用:

    getSupportActionbar().setTitle("Toolbar Title");    getSupportActionbar().setSubTitle("Toolbar SubTitle");

这也意味着您可以使用相同的回调在工具栏上创建菜单.

直接回答您的问题:

So Should i use tool bar Title (toolbar.setTitle) or something else?

您实际上可以使用toolbar.setTitle()或getSupportActionbar().setTitle()

Second if i want to create something more complex like Title and a short description (as shown in the material guIDelines in the layout structure) what should be my layout?

工具栏支持标题和字幕,因此您应该进行设置.我会检查the documentation只是为了看看所有工具栏支持的内容.作为一般规则,如果Actionbar可以执行此 *** 作,则工具栏可以.如果您有超出工具栏支持的疯狂要求,那么请记住工具栏只是一个奇特的VIEwGroup,因此您可以像添加linearLayout一样轻松添加窗口小部件/视图.

总结

以上是内存溢出为你收集整理的具有扩展工具栏的Android材质全部内容,希望文章能够帮你解决具有扩展工具栏的Android材质所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1110715.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存