国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android之側滑菜單DrawerLayout的使用介紹

2019-12-12 03:41:37
字體:
來源:轉載
供稿:網友

在android support.v4 中有一個抽屜視圖控件DrawerLayout。使用這個控件,可以生成通過在屏幕上水平滑動打開或者關閉菜單,能給用戶一個不錯的體驗效果。

DrawerLayout分為側邊菜單和主內容區兩部分,側邊菜單可以根據手勢展開與隱藏,主內容區的部分可以隨著菜單的點擊而變化。DrawerLayout其實是一個控件,跟LinearLayout差不多,直接使用即可。

DrawerLayout屬性

1、drawerPosition:指定 drawer 將從屏幕的一側滑動。

2、drawerWidth :指定 drawer 的寬度,即從窗口的邊緣拉到視圖更精確的寬度。

3、keyboardDismissMode :確定鍵盤是否響應拖動被駁回。

  • 'none' (默認值), 拖動不影響鍵盤。
  • 'on-drag', 拖動開始,鍵盤被駁回。

4、onDrawerClose :導航視圖關閉時調用函數。

5、onDrawerOpen :導航視圖打開時調用函數。

6、onDrawerSlide :與導航視圖交互時調用函數。

7、onDrawerStateChanged :當 Drawer 狀態發生變化時調用函數,drawer 有 3 種狀態: 

  •  idle -- 表示與導航視圖沒有交互
  •  dragging -- 表示目前有與導航視圖的交互
  •  settling -- 表示有與導航視圖的交互,并且導航視圖正在的關閉或打開。

8、renderNavigationView :導航圖將被渲染到屏幕的一側,并且可以拉出。

案例

使用導入依賴庫

compile 'com.android.support:appcompat-v7:24.2.1' 

布局文件

<?xml version="1.0" encoding="utf-8"?><android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:id="@+id/v4_drawerlayout"  android:layout_width="match_parent"  android:layout_height="match_parent">  <FrameLayout    android:id="@+id/v4_drawerlayout_frame"    android:layout_width="match_parent"    android:layout_height="match_parent" >    <TextView      android:layout_width="match_parent"      android:layout_height="match_parent"      android:id="@+id/v4_text"      android:textSize="22sp"      android:textColor="@color/colorAccent"      android:gravity="center"      />  </FrameLayout>  <ListView    android:layout_width="200dp"    android:layout_height="match_parent"    android:layout_gravity="left"    android:id="@+id/v4_listview"    android:choiceMode="singleChoice"    android:background="@android:color/white" /></android.support.v4.widget.DrawerLayout> 

Activity

public class DrawerActivity extends AppCompatActivity {  private ListView listView;  private DrawerLayout drawerLayout;  private TextView textView;  @Override  protected void onCreate(@Nullable Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.drawer_activity);    initView();  }  private void initView()  {    listView=(ListView) findViewById(R.id.v4_listview);    drawerLayout=(DrawerLayout) findViewById(R.id.v4_drawerlayout);    textView=(TextView) findViewById(R.id.v4_text);    initDate();  }  private void initDate(){    final List<String> list = new ArrayList<String>();    list.add("網易");    list.add("騰訊");    list.add("新浪");    list.add("搜狐");    ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, list);    listView.setAdapter(adapter);    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {      @Override      public void onItemClick(AdapterView<?> parent, View view, int position, long id) {        textView.setText(list.get(position));        showDrawerLayout();      }    });    drawerLayout.openDrawer(Gravity.LEFT);//側滑打開 不設置則不會默認打開  }  private void showDrawerLayout() {    if (!drawerLayout.isDrawerOpen(Gravity.LEFT)) {      drawerLayout.openDrawer(Gravity.LEFT);    } else {      drawerLayout.closeDrawer(Gravity.LEFT);    }  }} 

運行效果如圖:

下載地址:Drawerlayout_jb51.rar

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赤峰市| 新民市| 陕西省| 乾安县| 内江市| 绿春县| 阿拉善右旗| 阳东县| 昌黎县| 旌德县| 克东县| 会泽县| 荃湾区| 林甸县| 缙云县| 商丘市| 大城县| 婺源县| 沁阳市| 许昌市| 蓝山县| 顺义区| 和平县| 叶城县| 左贡县| 长春市| 南和县| 瑞昌市| 普兰店市| 池州市| 宜宾县| 永修县| 横峰县| 寻乌县| 隆子县| 丰宁| 金溪县| 恩施市| 布拖县| 景德镇市| 灵台县|