欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Android studio有关侧滑的实现代码

程序员文章站 2022-04-09 17:02:23
最近写课设,因为是新手,实现起来比较麻烦。所以写下此笔记,免得我以后忘记了。附图片://主页面的布局activity_main.xml:

最近写课设,因为是新手,实现起来比较麻烦。所以写下此笔记,免得我以后忘记了。

附图片:

Android studio有关侧滑的实现代码

//主页面的布局
activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.drawerlayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  xmlns:qpp="http://schemas.android.com/apk/res-auto"
  android:id="@+id/drawer_layout"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:fitssystemwindows="true"
  tools:opendrawer="start">
  <textview
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="hello world!"
     />

  <android.support.design.widget.navigationview
    android:id="@+id/nav_view"
    android:layout_width="207dp"
    android:layout_height="match_parent"
    android:layout_gravity="left"
    android:fitssystemwindows="true"
    qpp:headerlayout="@layout/stumenu1"
    qpp:menu="@menu/stumenu1" />

</android.support.v4.widget.drawerlayout>

头部的布局(放入layout)
stumenu1.xml:

<?xml version="1.0" encoding="utf-8"?>
<!--学生左滑后界面-->
<android.support.constraint.constraintlayout
  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">

  <linearlayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    >

    <imageview
      android:id="@+id/person"
      android:layout_width="72dp"
      android:layout_height="72dp"
      android:layout_margintop="75dp"
      android:src="@drawable/student"
      />
    <textview
      android:id="@+id/stutv"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:textsize="20sp"
      android:layout_margintop="20dp"
      android:textcolor="#282525"
      android:text="测试app"/>

  </linearlayout>

</android.support.constraint.constraintlayout>

菜单的布局:(放在menu文件夹)
stumenu1

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto">
  <group
    android:checkablebehavior="single">
    <item
      android:id="@+id/result"
      android:icon="@drawable/ic_launcher_background"
      android:checkable="true"
      android:title=" 测试结果"/>

  <item
    android:id="@+id/w1"
    android:icon="@drawable/ic_launcher_background"

    android:title=" 错题"/>
  <item
    android:id="@+id/s1"
    android:icon="@drawable/ic_launcher_background"
    android:title=" 得分"/>

  <item
    android:id="@+id/exit"
    android:icon="@drawable/ic_launcher_background"
    android:title=" 退出"/>
  </group>
</menu>

mainactivity.java:

package com.example.cholewu.slide;

import android.content.intent;
import android.support.annotation.nonnull;
import android.support.design.widget.navigationview;
import android.support.v4.widget.drawerlayout;
import android.support.v7.app.appcompatactivity;
import android.os.bundle;
import android.view.menuitem;
import android.widget.toast;

public class mainactivity extends appcompatactivity {

  @override
  protected void oncreate(bundle savedinstancestate) {
    super.oncreate(savedinstancestate);
    setcontentview(r.layout.activity_main);

    //左滑菜单
    initview();
  }
  private void initview() {

    //实现左右滑动
    final drawerlayout drawer = (drawerlayout) findviewbyid(r.id.drawer_layout);
    //菜单控件
    final navigationview nv = findviewbyid(r.id.nav_view);
    nv.setitemicontintlist(null);
    
    nv.setnavigationitemselectedlistener(new navigationview.onnavigationitemselectedlistener() {
      @override
      public boolean onnavigationitemselected(@nonnull menuitem item) {

        switch (item.getitemid()){
          case r.id.exit:
            //跳转到退出页面
            toast.maketext(mainactivity.this,"你已退出登录!",toast.length_short).show();
            intent intent=new intent();
            intent.setclass(mainactivity.this,exit.class);
            startactivity(intent);
            item.setchecked(true);
            break;
        }

        item.setcheckable(true);//设置可选项
        item.setchecked(true);//设置被选中
        drawer.closedrawers();//关闭菜单栏
        return true;
      }

    });
  }
}

(注意:如果直接复制代码的话,android.support.design.widget.navigationview可能会出错,需要自己在design那里布局,如果出错,可以看看以下navigationview右边是否有下载图案,点击下载就行了)

Android studio有关侧滑的实现代码

总结

到此这篇关于android studio有关侧滑的实现的文章就介绍到这了,更多相关android studio有关侧滑的实现内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!