zoukankan      html  css  js  c++  java
  • android29之UI控件的抽屉式实现方法之一(DrawerLayout和NavigationView)

    添加依赖

    implementation 'com.google.android.material:material:1.2.0-alpha06'


    在Layout中创建两个Xml布局文件,header.xml和menu.xml
    header.xml文件
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:background="#F89215"
          />
    </LinearLayout>
    
    <?xml version="1.0" encoding="utf-8"?>
    <menu xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        >
        <group android:checkableBehavior="single">
            <item android:title="首页" />
            <item android:title="收藏" />
            <item android:title="设置" />
            <item android:title="关于" />
            <item android:title="分享" />
        </group>
    
    </menu>
    
    activity_main.xml文件
    <?xml version="1.0" encoding="utf-8"?>
    <androidx.drawerlayout.widget.DrawerLayout 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"
        tools:context=".MainActivity"
        android:background="#5EA7F3"
        >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hello World!"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toTopOf="parent" />
    
        <com.google.android.material.navigation.NavigationView
            android:layout_height="match_parent"
            android:layout_width="wrap_content"
            android:layout_gravity="start"
            app:headerLayout="@layout/nav_header"
            app:menu="@layout/nav_menu"
            />
    </androidx.drawerlayout.widget.DrawerLayout>
    
    运行结果如下

  • 相关阅读:
    PHP 内核:foreach 是如何工作的(一)
    PHP 消息队列 Kafka 使用
    PHP7 生产环境队列 Beanstalkd 正确使用姿势
    你知道Laravel ORM 中的骚操作吗
    PHP 的 interface 有什么用处
    PHP 框架 Hyperf 实现处理超时未支付订单和延时队列
    java 浅谈web系统当中的cookie和session会话机制
    如何用charles进行https抓包
    Java实现图片按修改时间排序
    java读取文本文件内容
  • 原文地址:https://www.cnblogs.com/reyirfw/p/12728405.html
Copyright © 2011-2022 走看看