Android 个人博客客户端——My CSDN 的实现(5)

来源:互联网 发布:天津哪里有mac专柜 编辑:程序博客网 时间:2024/06/04 01:03

这一篇博客来讲一些可能容易被忽略的地方

一、TabPageIndicator的默认样式并不是就如My CSDN当中一样的,这个还需要为其指定主题样式
打开values文件夹下的styles.xml文件,删除系统默认的主题样式,建立自定义样式,用来设定标签颜色,宽度,字号,背景颜色切换等属性。

<resources>    <style name="MyTheme" parent="Theme.AppCompat.Light.DarkActionBar">        <item name="vpiTabPageIndicatorStyle">@style/MyWidget.TabPageIndicator</item>        <item name="android:windowNoTitle">true</item>        <item name="android:animationDuration">3000</item>        <item name="android:windowContentOverlay">@null</item>    </style>    <style name="MyWidget.TabPageIndicator" parent="Widget">        <item name="android:gravity">center</item>        <item name="android:background">@drawable/vpi__tab_indicator</item>        <item name="android:paddingLeft">20dip</item>        <item name="android:paddingRight">20dip</item>        <item name="android:paddingTop">8dp</item>        <item name="android:paddingBottom">8dp</item>        <item name="android:textAppearance">@style/MyTextAppearance.TabPageIndicator</item>        <item name="android:maxLines">1</item>    </style>    <style name="MyTextAppearance.TabPageIndicator" parent="Widget">        <item name="android:textStyle">bold</item>        <item name="android:textSize">18sp</item>        <item name="android:textColor">@drawable/viewpager_title_textcolor</item>        <item name="android:layout_width">wrap_content</item>    </style></resources>

当中还引用了drawable文件夹下的vpi__tab_indicator文件

<item name="android:background">@drawable/vpi__tab_indicator</item>

用于当标签切换时,将标签替换为白色字体。
之后在AndroidManifest.xml中将主题样式修改为MyTheme

android:theme="@style/MyTheme"

二、在activity_main.xml布局中使用了NavigationView,这是一个新控件,可以很方便地为侧边栏设定菜单列表

    <android.support.design.widget.NavigationView        android:id="@+id/nav_view"        android:layout_width="wrap_content"        android:layout_height="match_parent"        android:layout_gravity="start"        android:fitsSystemWindows="true"        app:headerLayout="@layout/nav_header"        app:itemTextColor="#000"        app:menu="@menu/activity_main_drawer" />

当中需要引用一个菜单布局文件
创建一个menu文件夹,建立一个activity_main_drawer.xml文件

<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android">    <group android:checkableBehavior="single">        <item            android:id="@+id/nav_settings"            android:icon="@drawable/ic_menu_manage"            android:title="设置" />        <item            android:id="@+id/nav_about"            android:icon="@drawable/ic_menu_send"            android:title="关于" />    </group></menu>

当中设定了两个菜单项,并设定了菜单名称与图标。

三、工程中引用了好几个依赖库,并需要导入support包,如果在布局文件中一直提示控件不明,那么可能就是依赖库导入不全了。
需要的全部依赖项如下图所示

这里写图片描述

系统自带的依赖库的导入方法是点击右上角的加号,选择library dependency,输入要导入的包名,点击OK即可。

这里写图片描述

添加外部依赖库的方法是:点击左上角的加号,将依赖库作为Modules导入进来
这里写图片描述

然后选中app,点击右上角加号,选择Module dependency,选择需要作为依赖项的Module就好了。

那个人CSDN个人客户端的开发流程就到这里介绍完毕了~有疑问的童鞋可以留言交流~

1 0
原创粉丝点击