最详尽的DrawerLayout用法
来源:互联网 发布:义隆单片机c语言教程 编辑:程序博客网 时间:2024/04/30 13:05
MainActivity:
public class Main7Activity extends Activity { private MyAdapter adapter; private ListView listView; private List<Use> mList = new ArrayList<Use>(); private Context mContext = this;//上下文不可少 private DrawerLayout mDrawer; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main7); listView=(ListView)findViewById(R.id.listview1); addDATA(); adapter=new MyAdapter(mContext,mList); listView.setAdapter(adapter); mDrawer=(DrawerLayout)findViewById(R.id.draw); mDrawer.setDrawerListener(new DrawerLayout.DrawerListener() { @Override public void onDrawerSlide(View drawerView, float slideOffset) { if (drawerView.getTag().equals("left")) { View content = mDrawer.getChildAt(0); System.out.println("xxxxxxxxxx"); int offset = (int) (drawerView.getWidth() * slideOffset); content.setTranslationX(offset); content.setScaleX(1 - slideOffset * 0.5f); content.setScaleY(1 - slideOffset * 0.5f); } } @Override public void onDrawerOpened(View drawerView) { } @Override public void onDrawerClosed(View drawerView) { } @Override public void onDrawerStateChanged(int newState) { } }); } private void addDATA() { Use u1=new Use("发送给对方水电费讽德诵功","上的风格都是告诉对方公司的风格"); Use u2=new Use("发送给对方水电费讽德诵功","上的风格都是告诉对方公司的风格"); Use u3=new Use("发送给对方水电费讽德诵功","上的风格都是告诉对方公司的风格"); Use u4=new Use("发送给对方水电费讽德诵功","上的风格都是告诉对方公司的风格"); Use u5=new Use("发送给对方水电费讽德诵功","上的风格都是告诉对方公司的风格"); Use u6=new Use("发送给对方水电费讽德诵功","上的风格都是告诉对方公司的风格"); Use u7=new Use("发送给对方水电费讽德诵功","上的风格都是告诉对方公司的风格"); Use u8=new Use("发送给对方水电费讽德诵功","上的风格都是告诉对方公司的风格"); mList.add(u1); mList.add(u2); mList.add(u3); mList.add(u4); mList.add(u5); mList.add(u6); mList.add(u7); mList.add(u8); }}
MainActivity.xml:
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/draw" tools:context="com.fae.mobile.activity.Main7Activity" > <include layout="@layout/activity_main4"/> <LinearLayout android:tag="left" //不可缺失 android:layout_gravity="left" android:layout_width="350dp" android:layout_height="match_parent" android:id="@+id/fragment" android:orientation="vertical" android:background="@color/white"> <TextView android:id="@+id/Text" android:layout_gravity="center" android:gravity="center" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="筛选" android:textSize="25sp" /> <ListView android:layout_marginTop="15dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@id/listview1"></ListView> </LinearLayout></android.support.v4.widget.DrawerLayout>
MyAdapter:
public class MyAdapter extends BaseAdapter { private Context mcontext; private List<Use> mList; public MyAdapter(Context mcontext,List<Use> list) { this.mcontext = mcontext; this.mList = list; } @Override public int getCount() { return mList.size(); } @Override public Object getItem(int position) { return mList.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { final InfoViewHold mInfoViewHold; if (convertView == null) { convertView = LayoutInflater.from(mcontext).inflate(R.layout.item_layout, null); mInfoViewHold = new InfoViewHold(convertView); convertView.setTag(mInfoViewHold); } else { mInfoViewHold = (InfoViewHold) convertView.getTag(); } mInfoViewHold.persion .setText(mList.get(position).getPersion()); mInfoViewHold.speak .setText(mList.get(position).getSpeak()); return convertView; } public class InfoViewHold { private TextView persion,speak; public InfoViewHold(View convertView) { persion = (TextView) convertView.findViewById(R.id.testView); speak = (TextView) convertView.findViewById(R.id.testView2); } }}
Item.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/testView" android:maxLines="1" android:textSize="20dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/testView2" android:textSize="10dp" android:maxLines="1"/> </LinearLayout> <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> <Button android:text="控件1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/mbutton1" android:layout_alignParentRight="true" android:maxLines="1"/> </RelativeLayout></LinearLayout>
阅读全文
0 0
- 最详尽的DrawerLayout用法
- sizeof的详尽用法
- DrawerLayout的基本用法
- DrawerLayout的简单用法
- STL的set详尽用法
- 最详尽的 Swift 代码规范指南
- 最详尽的 Swift 代码规范指南
- 最详尽的 Swift 代码规范指南
- 最详尽的 Swift 代码规范指南
- 最详尽的 Swift 代码规范指南
- Android--DrawerLayout的基本用法
- DrawerLayout的基本用法SlidingMenu
- DrawerLayout、Toolbar 的详细用法
- 系统架构:消息队列的详尽用法
- 最简单的侧滑效果DrawerLayout
- javascript基础知识【最详尽】
- 侧滑菜单DrawerLayout的用法
- Android中的DrawerLayout的简单用法
- 【Linux】 JDK安装及配置 (tar.gz版)
- 瑞萨基础学习之----PWM输出
- 在Activity中定义颜色
- Java并发之join原理解析
- ZooKeeper 安装部署
- 最详尽的DrawerLayout用法
- 在windows下conda install lda
- linux面试题目(五)
- IP基础知识 主机地址和网络地址
- mysql查询每天每周每月每年的数据方法
- C++链表实现二叉树
- vs2013+open1.0环境配置
- CSDN博客多少积分可以有排名
- Dubbo(2)——Admin管理平台和Zookeeper注册中心的搭建