Drawer侧滑

来源:互联网 发布:适合初中生看的编程书 编辑:程序博客网 时间:2024/06/07 18:36
XML文件布局侧滑,如一下代码:<android.support.v4.widget.DrawerLayout    xmlns:android="http://schemas.android.com/apk/res/android"    android:id="@+id/draw"    android:layout_width="match_parent"    android:layout_height="match_parent"    ><TextView    android:layout_width="match_parent"    android:layout_height="match_parent"    android:text="DJFKLS"/>    <ListView        android:id="@+id/li"        android:layout_width="match_parent"        android:layout_height="match_parent"        android:layout_gravity="start"        android:choiceMode="singleChoice" /></android.support.v4.widget.DrawerLayout>在MainActivity里的所有方法如一下代码:
package day_zhoukao.myapplication;import android.os.Bundle;import android.support.v4.widget.DrawerLayout;import android.support.v7.app.AppCompatActivity;import android.util.Log;import android.view.View;import android.view.ViewGroup;import android.widget.AdapterView;import android.widget.BaseAdapter;import android.widget.ListView;import android.widget.TextView;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity {    private DrawerLayout dra;    private ListView li;    List<String> list=new ArrayList<>();    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        //获取侧滑ID        dra = findViewById(R.id.draw);        //获取ListviewID        li = findViewById(R.id.li);        //调用初始化方法        initData();        Log.d("tag", "getView:++++++++++++ "+list.toString());        //获取ListView适配器        li.setAdapter(new BaseAdapter() {            private Holder ho;            @Override            public int getCount() {                return list.size();            }            @Override            public Object getItem(int i) {                return null;            }            @Override            public long getItemId(int i) {                return 0;            }            @Override            public View getView(int i, View view, ViewGroup viewGroup) {                if (view==null){                    ho = new Holder();                    view= View.inflate(MainActivity.this, R.layout.two, null);                    ho.te = view.findViewById(R.id.te);                    view.setTag(ho);                }else {                    ho = (Holder) view.getTag();                }                ho.te.setText(list.get(i));                return view;            }        });        //给Listview设置Item监听事件        li.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {                //点击Item关闭侧滑                dra.closeDrawers();            }        });    }    class Holder{        TextView te;    }    //初始化一个方法    public void initData(){        for (int i = 0; i <20 ; i++) {            list.add("侧滑"+i);        }            }}