zoukankan      html  css  js  c++  java
  • Android 使用V4包写侧滑菜单(android.support.v4.widget.DrawerLayout)

      在Android 中写侧滑菜单可以自定义,也可以使用安卓官方自带的v4包,也有第三方包可以用。这里记录官方的

    android.support.v4.widget.DrawerLayout

    这种方法比较简单,在xml布局文件中搭建好,在Activity中调用
    m.openDrawer(Gravity.LEFT);方法就可以使用了。
    注意点:这个方法不可以放在oncreat方法中直接使用,涉及线程的原因,这里不作介绍。
        界面内容都放在v4包内,如下
    <android.support.v4.widget.DrawerLayout
    android:id="@+id/drawerlayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >
    界面内容
    </android.support.v4.widget.DrawerLayout>

    界面布局在v4包内会有些快捷词没法联想出来,所以最好先写好界面,然后在头尾加上v4包

    侧滑效果有两种:手指侧滑和点击弹出侧滑界面,先上效果图:






    XML文件布局
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">
    
        <android.support.v4.widget.DrawerLayout
            android:id="@+id/draw"
            android:layout_width="match_parent"
            android:layout_height="match_parent">
    <!--主界面-->
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="#000000"
                android:orientation="horizontal">
    
                <Button
                    android:id="@+id/btn"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content" />
    
            </LinearLayout>
    <!--侧滑界面-->
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_gravity="left"//这个属性决定侧滑界面是左侧滑还是右侧滑
                android:background="#ded3d3"
                android:orientation="horizontal">
    
                <Button
                    android:id="@+id/btn2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="#000000" />
    
            </LinearLayout>
        </android.support.v4.widget.DrawerLayout>
    
    
    </LinearLayout>





     
    Maintivity.java文件
    
    
    public class MainActivity extends AppCompatActivity {
        DrawerLayout drawerLayout;
        Button btn, btn2;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            drawerLayout = (DrawerLayout) findViewById(R.id.draw);
            btn = (Button) findViewById(R.id.btn);
            btn2 = (Button) findViewById(R.id.btn2);
    //实现方法一:
    定义好xml文件后手指侧滑就可以拉出侧滑界面了
    //实现方法二:
    定义好xml文件后,在java文件中添加点击事件也可以拉出侧滑菜单,代码如下:

    // 点击主界面中的按钮弹出侧滑界面 btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { drawerLayout.openDrawer(Gravity.LEFT); } }); // 点击侧滑界面中的按钮缩回侧滑界面 btn2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { drawerLayout.closeDrawer(Gravity.LEFT); } }); } }
    
    
    
    注意:主界面布局一定要放在侧滑界面的上面,否则侧滑界面中无法添加点击事件







  • 相关阅读:
    PHP深入浅出之命名空间(Namespace)的使用详解
    函数func_get_args详解
    验证码封装类
    PHP中SESSION自定义会话管理器
    网页开发常见问题总结
    mysql远程连接只显示部分数据库问题
    认识和学习bash
    IPv6地址格式示例及IPv6与IPv4的区别分析
    用HTTP核心模块配置一个静态Web服务器
    Nginx服务项的基本配置
  • 原文地址:https://www.cnblogs.com/lyd447113735/p/7999831.html
Copyright © 2011-2022 走看看