DrawerLayout的代码

package zhanghaijiao.bawei.com.drawerlayout_demo;

 

import android.support.v4.widget.DrawerLayout;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.util.Log;

import android.view.View;

import android.widget.AdapterView;

import android.widget.ArrayAdapter;

import android.widget.Button;

import android.widget.ListView;

import android.widget.RelativeLayout;

import android.widget.Toast;

 

import java.util.ArrayList;

import java.util.List;

 

public class MainActivity extends AppCompatActivity {

    private List<String> data=new ArrayList<>();

    private DrawerLayout drawerLayout;

    private RelativeLayout menu;

 

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

 

        drawerLayout = findViewById(R.id.drawer);

        menu = findViewById(R.id.menu);

        Button b=findViewById(R.id.btnOpen);

        b.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                drawerLayout.openDrawer(menu);//打开菜单

            }

        });

 

 

 

        ListView listView=findViewById(R.id.lv);

 

        for(int i=0;i<20;i++){

            data.add("item"+i);

        }

 

        ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,data);

        listView.setAdapter(adapter);

 

        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override

            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {

                //关闭菜单

                drawerLayout.closeDrawer(menu);

 

                //动态添加fragment

                getSupportFragmentManager().beginTransaction().replace(R.id.frcontent,new MyFragment()).commit();

 

            }

        });

 

        //添加监听事件

        drawerLayout.setDrawerListener(new DrawerLayout.DrawerListener() {

            @Override

            public void onDrawerSlide(View drawerView, float slideOffset) {

                Log.d("zzz","--"+slideOffset);

 

            }

 

            //

            @Override

            public void onDrawerOpened(View drawerView) {

                Toast.makeText(MainActivity.this,"打开了!",Toast.LENGTH_SHORT).show();

 

            }

 

            @Override

            public void onDrawerClosed(View drawerView) {

                Toast.makeText(MainActivity.this,"关闭了!",Toast.LENGTH_SHORT).show();

            }

 

            /**

             * 当抽屉滑动状态改变的时候被调用

             * 状态值是STATE_IDLE(闲置--0, STATE_DRAGGING(拖拽的--1, STATE_SETTLING(固定--2)中之一。

             * 抽屉打开的时候,点击抽屉,drawer的状态就会变成STATE_DRAGGING,然后变成STATE_IDLE

             */

            @Override

            public void onDrawerStateChanged(int newState) {

 

            }

        });

 

 

 

    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值