Android Drawerlayout實(shí)現(xiàn)側(cè)滑菜單效果
更新時(shí)間:2017年10月24日 16:10:32 作者:污鴉
這篇文章主要為大家詳細(xì)介紹了Android Drawerlayout實(shí)現(xiàn)側(cè)滑菜單效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本文實(shí)例為大家分享了Drawerlayout側(cè)滑菜單的具體代碼,供大家參考,具體內(nèi)容如下
1、Drawerlayout的xml布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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"
tools:context="animtest.com.example.e531.drawerlayout_demo.MainActivity">
<!--側(cè)拉菜單-->
<android.support.v4.widget.DrawerLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/drlayout">
<!--主頁面的布局-->
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/fcontent">
</FrameLayout>
<!--拉菜單的布局 android:layout_gravity="start" 菜單在左邊 end 菜單在右邊 -->
<RelativeLayout
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="end"
android:background="#ffff00"
android:id="@+id/rel">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
android:id="@+id/img"/>
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/lv"
android:layout_below="@id/img"></ListView>
</RelativeLayout>
</android.support.v4.widget.DrawerLayout>
</RelativeLayout>
2、在Activity中的具體使用方法
package animtest.com.example.e531.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.ListView;
import android.widget.RelativeLayout;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private ListView listView;
private DrawerLayout drawerLayout;
private RelativeLayout rel;
private List<String> datas;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//查找組件
drawerLayout = (DrawerLayout) findViewById(R.id.drlayout);
listView = (ListView) findViewById(R.id.lv);
rel = (RelativeLayout) findViewById(R.id.rel);
//構(gòu)造數(shù)據(jù)
datas = new ArrayList<String>();
for(int i=0;i<10;i++){
datas.add("菜單"+i);
}
//設(shè)置數(shù)組適配器
ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, datas);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
//關(guān)閉側(cè)滑菜單
drawerLayout.closeDrawer(rel);
//drawerLayout.openDrawer(rel);//打開側(cè)滑菜單
//設(shè)置參數(shù)
ContentFragment contentFragment=new ContentFragment();
Bundle bundle=new Bundle();
bundle.putString("value",datas.get(position));
contentFragment.setArguments(bundle);
//切換fragment
getSupportFragmentManager().beginTransaction().replace(R.id.fcontent,contentFragment).commit();
}
});
drawerLayout.setDrawerListener(new DrawerLayout.DrawerListener() {
//slideOffset:側(cè)滑菜單 寬度的像素值
@Override
public void onDrawerSlide(View drawerView, float slideOffset) {
}
@Override
public void onDrawerOpened(View drawerView) {
Log.d("zzz","open");
}
@Override
public void onDrawerClosed(View drawerView) {
Log.d("zzz","close");
}
@Override
public void onDrawerStateChanged(int newState) {
Log.d("zzz","狀態(tài)改變:"+newState);
}
});
}
}
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- Android側(cè)滑菜單之DrawerLayout用法詳解
- Android自定義實(shí)現(xiàn)側(cè)滑菜單效果
- Android實(shí)現(xiàn)QQ側(cè)滑菜單效果
- Android側(cè)滑菜單控件DrawerLayout使用詳解
- android側(cè)滑菜單控件DrawerLayout使用方法詳解
- Android使用DrawerLayout實(shí)現(xiàn)雙向側(cè)滑菜單
- Android中DrawerLayout實(shí)現(xiàn)側(cè)滑菜單效果
- android實(shí)現(xiàn)左右側(cè)滑菜單效果
- Android使用DrawerLayout實(shí)現(xiàn)側(cè)滑菜單效果
- Android實(shí)現(xiàn)側(cè)滑菜單DrawerLayout
相關(guān)文章
Android App開發(fā)中HTTP擴(kuò)展包OkHttp的入門使用指南
OkHttp包為安卓開發(fā)中基于HTTP協(xié)議的網(wǎng)絡(luò)編程提供了很大便利,這里我們就來看一下Android App開發(fā)中HTTP擴(kuò)展包OkHttp的入門使用指南:2016-07-07
Android應(yīng)用中使用TabHost組件繼承TabActivity的布局方法
這篇文章主要介紹了Android應(yīng)用中使用TabHost組件繼承TabActivity的布局方法,文中分別介紹了以Activity和以布局文件進(jìn)行布局的方式,需要的朋友可以參考下2016-04-04
Android自定義view實(shí)現(xiàn)滑動(dòng)解鎖效果
這篇文章主要為大家詳細(xì)介紹了Android自定義view實(shí)現(xiàn)滑動(dòng)解鎖效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-05-05

