达到下面效果:
[img]
[/img]
使用android.support.v4.widget.DrawerLayout默认效果如下:
略显单调,如果能通过图标与文字的方式,就好看很多,通过创建自定义适配器,达到图标和文字在左侧显示菜单效果。
创建布局文件
<?xml version="1.0" encoding="utf-8"?> <!--左侧导航每一行布局--> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ImageView android:id="@+id/MainActivityImage" android:layout_width="50dp" android:layout_height="50dp" android:layout_gravity="center_horizontal" /> <TextView android:id="@+id/MainActivityText" android:layout_width="100dp" android:layout_height="fill_parent" android:layout_gravity="center_horizontal" android:gravity="center" /> </LinearLayout>
自定义适配器:
package com.hx.adapter; import com.hx.activity.R; import android.content.Context; import android.graphics.Color; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; /** * * @author hx * 左侧导航适配器 * */ public class MenuAdapter extends BaseAdapter{ private Context context; public MenuAdapter(Context context) { this.context=context; } public void ChangeImg(int index,Integer dreawble) { images[index] = dreawble; } private Integer[] images = { R.drawable.m_eidmng, R.drawable.m_exit }; private String[] texts = { //左侧导航文字 "告警管理", "提交告警" }; @Override public int getCount() { // TODO Auto-generated method stub return images.length; } @Override public Object getItem(int position) { return position; } //get the current selector's id number @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View view, ViewGroup viewgroup) { ImgTextWrapper wrapper; if(view==null) { wrapper = new ImgTextWrapper(); LayoutInflater inflater = LayoutInflater.from(context); view = inflater.inflate(R.layout.hx_m_item, null); view.setTag(wrapper); view.setPadding(15, 15, 15, 15); //每格的间距 } else { wrapper = (ImgTextWrapper)view.getTag(); } wrapper.imageView = (ImageView)view.findViewById(R.id.MainActivityImage); wrapper.imageView.setBackgroundResource(images[position]); wrapper.textView = (TextView)view.findViewById(R.id.MainActivityText); wrapper.textView.setTextColor(Color.WHITE); wrapper.textView.setText(texts[position]); return view; } }
在主activity里面添加适配器:
//设置打开抽屉列表,并添加监听 mMenuAdapter = new MenuAdapter(this); mDrawerList.setAdapter(mMenuAdapter);
相关推荐
在Android应用开发中,"左边抽屉式菜单"(通常称为侧滑菜单或抽屉式导航)是一种常见的设计模式,它允许用户通过从屏幕边缘向内滑动来展示或隐藏菜单选项。这种设计使得在有限的屏幕空间内,能够方便地访问多个功能...
开发者可以通过自定义菜单内容和样式,使应用具有更个性化的外观。 2. **ViewPager**: ViewPager是Android SDK中的一个强大视图容器,它允许用户通过水平滑动来浏览多个页面。在本例中,ViewPager被用作Tab的实现...
8. **Customization**:虽然`NavigationView`提供了预定义的样式,但为了与应用的整体设计保持一致,开发者往往需要自定义菜单项的字体、颜色、图标等。 9. **动画效果**:为增加用户体验,可以添加过渡动画,如...
左侧推入式的抽屉菜单是从屏幕左侧滑入,它是Android应用中最常见的抽屉菜单形式,遵循Material Design指南。当菜单打开时,它不会完全覆盖主内容,而是从屏幕边缘滑出,给人一种自然、平滑的过渡效果。这种菜单常...
5. **自定义菜单**:`SlidingMenu`允许你自定义菜单的内容和样式。你可以创建一个单独的布局文件来定义菜单项,然后将其设置给`SlidingMenu`。菜单项可以是简单的文本,也可以是包含图标和文本的列表项。 6. **交互...
在移动应用和网页设计中,"左侧抽屉"或"左侧菜单"是一种常见的导航模式,尤其在响应式设计中广泛采用。这种设计模式通常用于在有限的屏幕空间中提供一个可隐藏但易于访问的菜单选项,以提升用户体验。在本讨论中,...
在Android开发中,左侧菜单(通常称为滑动抽屉或Navigation Drawer)和右侧内容是常见的应用界面设计,这种布局方式可以有效地展示多个功能模块并提供良好的用户体验。Android的左侧菜单通常用于放置导航选项,而...
在Android应用开发中,抽屉效果(Drawer Effect)是一种常见的设计模式,用于实现类似Google Now、Facebook等应用的侧滑菜单。这个从gitHub上整理的Android抽屉效果项目,涵盖了左滑、右滑、上滑和下滑等多种交互...
抽屉菜单,也被称为侧滑菜单,是Android应用设计中常见的一种导航模式,尤其在智能手机和平板设备上广泛使用。这种设计模式允许用户通过从屏幕边缘向内滑动来显示或隐藏一个包含导航选项的菜单,类似于从抽屉中抽出...
2. **`NavigationView`**: `NavigationView`是Android Support Library的一部分,它提供了一个预定义的视图,可以轻松地填充抽屉菜单的内容,如标题、图标和菜单项。它可以与`DrawerLayout`结合使用,简化菜单的创建...
在Android应用开发中,"左抽屉效果"是一种常见的界面设计模式,通常用于实现导航菜单。这个效果使得用户可以通过从屏幕左侧滑动来显示或隐藏一个包含导航选项的面板,模仿了现实生活中抽屉的动作,因此得名"抽屉式...
为了自定义菜单样式和行为,开发者可能使用了自定义布局和动画。自定义布局可以让菜单根据需求展示不同的UI元素,例如图标、文本、分割线等。而自定义动画则可以控制菜单展开和收起时的过渡效果,提高用户体验。例如...
以上就是实现Android左侧或右侧滑动菜单所需的关键知识点。通过理解并应用这些概念,开发者可以创建出符合现代移动应用设计标准的交互式菜单。在实际项目中,还可以根据需求进行个性化定制,比如添加过渡动画、...
以下是一些关键步骤来创建一个基本的Android左侧抽屉: 1. **在布局文件中添加`DrawerLayout`**: 在你的主活动布局XML文件中,添加`DrawerLayout`作为根元素。例如: ```xml <androidx.drawerlayout.widget....
4. **Pane** 和 **Content**:这两个区域分别定义了抽屉菜单和主要内容的布局。 接下来,我们要讨论的是MD(Material Design)主题。MD是一种由Google推出的界面设计语言,强调简洁、清晰和响应式的设计原则,广泛...
抽屉内容通常是一个`NavigationView`,它包含了一个列表视图,可以自定义菜单项。`NavigationView`有自己的XML布局,可以通过`app:menu`属性指定菜单XML资源文件。你也可以使用其他布局,如`LinearLayout`或`...
抽屉菜单(Drawer Menu)是Android应用中常见的一种设计模式,它通常被用来实现侧滑导航功能,使得用户可以从屏幕边缘滑出一个菜单,就像拉开抽屉一样。这种设计不仅节省了屏幕空间,还能提供良好的用户体验,尤其...
在Android应用开发中,抽屉(Drawer)样式通常指的是侧滑菜单,它是用户界面中一个常见且重要的设计元素。抽屉通常隐藏在屏幕边缘,通过手势或特定按钮触发,显示额外的功能选项或导航链接,为用户提供更丰富的交互...
在Android应用开发中,下拉抽屉(Pull Down Drawer)是一种常见的交互设计,它通常用于显示侧滑菜单或隐藏的功能选项。在Android4.4(KitKat)版本中,谷歌引入了新的设计指南和组件,使得实现这样的效果更加便捷。...