DrawerLayout简单实现slidingmenu效果

来源:互联网 发布:问卷数据如何录入spss 编辑:程序博客网 时间:2024/05/01 10:24


activity_main.xml

<LinearLayout 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"    android:orientation="vertical"    tools:context=".MainActivity" >    <Button        android:id="@+id/button"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="Button" />    <android.support.v4.widget.DrawerLayout        android:id="@+id/drawer_layout"        android:layout_width="fill_parent"        android:layout_height="fill_parent" >        <FrameLayout            android:id="@+id/content_view"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:background="#FFA07A" >        </FrameLayout>        <ListView            android:id="@+id/drawer_left"            android:layout_width="120dp"            android:layout_height="match_parent"            android:layout_gravity="left" >        </ListView>    </android.support.v4.widget.DrawerLayout></LinearLayout>



MainActivity

package com.example.drawerlayout;import android.graphics.Color;import android.net.wifi.WifiConfiguration.Status;import android.os.Bundle;import android.support.v4.app.FragmentActivity;import android.support.v4.widget.DrawerLayout;import android.view.Gravity;import android.view.View;import android.view.ViewGroup;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ArrayAdapter;import android.widget.Button;import android.widget.ListView;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends FragmentActivity {//控制抽屉开关的按钮private Button button;//默认抽屉是关着的private boolean open = false;//抽屉控件idprivate DrawerLayout drawerLayout;//左边抽屉的listView视图控件private ListView leftDrawer;//左边抽屉的适配器private ArrayAdapter<String> adapter;//左边抽屉的数据源private final String[] items = new String[] { "选项一:", "选项二:", "选项三:","选项4:", "选项5:", "选项6:" };@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {if (open) {drawerLayout.closeDrawer(Gravity.LEFT);open = false;}else {drawerLayout.openDrawer(Gravity.LEFT);open = true;}}});drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);//listView视图leftDrawer = (ListView) findViewById(R.id.drawer_left);//适配器adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, items) {@Overridepublic View getView(int position, View convertView, ViewGroup parent) {// 设置背填充内容背景色TextView tView = (TextView) super.getView(position,convertView, parent);tView.setTextColor(Color.BLACK);return super.getView(position, convertView, parent);}};//设置适配器leftDrawer.setAdapter(adapter);leftDrawer.setBackgroundColor(Color.WHITE);// 设置选择模式为单条选中leftDrawer.setChoiceMode(ListView.CHOICE_MODE_SINGLE);leftDrawer.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> parent, View view, int pos,long id) {leftDrawer.setItemChecked(pos, true);Toast.makeText(MainActivity.this, "" + pos, 0).show();// // 关闭所有打开的抽屉drawerLayout.closeDrawers();}});}}


0 0