精华内容
下载资源
问答
  • DrawableLayout

    2015-12-10 16:53:31
    ActionBar+DrawableLayout+Palette打造侧滑UI 正文猛戳 http://blog.csdn.net/saberhao/article/details/50248767
  • ListView+DrawableLayout实现侧边栏效果、简单易懂,可供参考
  • ViewPager+Fragment+DrawableLayout + NavigationView实现页面水平滑动与侧滑抽屉布局
  • 设置DrawableLayout覆盖整个屏幕

    千次阅读 2017-02-28 18:57:50
    DrawableLayout是Android5.0后推出的一个布局,可以实现QQ侧滑菜单的效果,但是有些时候需要实现侧滑菜单覆盖整个屏幕,这时候只需在布局文件中设置相应属性即可。代码如下 android:id="@+id/list_view_menu" ...

    DrawableLayout是Android5.0后推出的一个布局,可以实现QQ侧滑菜单的效果,但是有些时候需要实现侧滑菜单覆盖整个屏幕,这时候只需在布局文件中设置相应属性即可。代码如下

    <ListView
        android:id="@+id/list_view_menu"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginLeft="-64dp"
        android:layout_gravity="start"
        android:background="#ffffff"
        android:divider="#ffffff"></ListView>
    
    <ImageView
        android:id="@+id/image_view_user"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginRight="-64dp"
        android:layout_gravity="end"
        android:background="@drawable/splash"></ImageView>
    

    上面两个布局分别实现向右侧滑 android:layout_gravity=”start” 和 向左侧滑 android:layout_gravity=”end”的功能。实现侧滑菜单覆盖整个屏幕需要设置一个属性,

    向右侧滑:android:layout_marginLeft=”-64dp”;

    向左侧滑:android:layout_marginRight=”-64dp”

    展开全文
  • DrawableLayout实现仿QQ侧滑菜单

    千次阅读 2017-03-06 13:32:32
    由于移动设备的屏幕限制,...实现侧滑菜单的方式有很多种,包括自定义控件,使用开源库SlideMenu等,但Google在MaterialUI中推出使用DrawableLayout实现侧滑菜单的功能。既然市面上已经有了不少侧滑菜单的实现方式,那

    由于移动设备的屏幕限制,在主界面同时显示很多东西是不大显示的事,因而很多时候我们都会把一些功能选项放在菜单。但传统的菜单界面比较单调,而且交互体验并不是很好,因此,侧滑菜单也因此应运而生。

    实现侧滑菜单的方式有很多种,包括自定义控件,使用开源库SlideMenu等,但Google在MaterialUI中推出使用DrawableLayout实现侧滑菜单的功能。

    既然市面上已经有了不少侧滑菜单的实现方式,那DrawableLayout又有什么优势呢?笔者在使用的时候觉得有以下几点值得我们去使用DrawableLayout。

    1、界面美观。这也是很多人觉得MaterialUI推出后Android界面并不比IOS差的原因了。

    2、使用简单。相比自定义一个侧滑菜单的成本低很多。

    那下面我们就来看一下怎么使用DrawableLayout

    1、布局。在界面中放入两个子的布局,第一个子布局是主界面,第一个子布局是左侧滑菜单,当然我们也可以在右边也放一个侧滑菜单,不过目前市面上似乎没见过有左右侧滑菜单的APP,这个视实际情况决定。下面是activity_main.xml的代码

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.v4.widget.DrawerLayout     
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/drawer_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    
        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">
    
            <LinearLayout
                android:id="@+id/activity_main"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical">
    
                <include layout="@layout/title_bar" />
    
                <FrameLayout
                    android:id="@+id/fl_main"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"> 
                </FrameLayout>
            </LinearLayout>
        </FrameLayout>
    
        <ListView
            android:id="@+id/list_view_menu"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="start"
            android:background="#ffffff"
            android:divider="#ffffff"></ListView>
    
    
    </android.support.v4.widget.DrawerLayout>

    以上是笔者使用DrawableLayout实现的一个仿知乎日报侧滑菜单的主界面。从代码可以清楚的看到最外层布局使用的是DrawableLayout,然后多了xmlns:app=”http://schemas.android.com/apk/res-auto”这么一行代码,关于命名空间的这里不去讲解,有兴趣的读者可以自行搜索,只有加了这一行代码后我们才可以使用MaterialUI的新属性。然后就是第二个子布局笔者使用了一个ListView控件,当然也可以使用其他控件。细心的读者可能会发现多了这么一行代码android:layout_gravity=”start”。这个属性是必须制定的,如果去掉,第二个子控件就会覆盖在第一个控件上了。这样子就完成了侧滑菜单就完成了。

    细心的读者肯恩贵发现,QQ点击左侧头像的时候也可以调出侧滑菜单,下面我们就在Java中实现这一功能。

    public class MainActivity extends AppCompatActivity {
    
        private DrawerLayout drawerLayout;
        private ImageButton menu_title_bar;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
            menu_title_bar = (ImageButton)findViewById(R.id.menu_title_bar);
            menu_title_bar.setOnClickListener(new MyOnClickListener());
        }
        class MyOnClickListener implements View.OnClickListener{
    
            @Override
            public void onClick(View v) {
                switch (v.getId()) {
                    case  R.id.menu_title_bar:
                      drawer_layout.openDrawer(GravityCompat.START);
                        break;
                }
            }
        }
    }

    这里为了简洁,笔者把其他代码删去了,只留下调用侧滑菜单的方法。这关键的就是这一句

    drawer_layout.openDrawer(GravityCompat.START);

    传进去的参数要跟在布局文件中定义的一致。

    以下是笔者根据知乎日报API做的一个界面效果图。

    这里写图片描述

    展开全文
  • 效果图: ...1、Listview+DrawableLayout代码 &lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;android.support.v4.widget.DrawerLayout xmlns:android="...

    效果图:

    1、Listview+DrawableLayout代码

    <?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">
        </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="#ffffff"/>
    </android.support.v4.widget.DrawerLayout>

    Mainactivity.java

    public class MainActivity extends AppCompatActivity implements View.OnClickListener{
    
        private ListView listView;
        private DrawerLayout drawerLayout;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            initView();
        }
    
        private void initView()
        {
            listView=(ListView) findViewById(R.id.v4_listview);
            drawerLayout=(DrawerLayout) findViewById(R.id.v4_drawerlayout);
            initDate();
        }
    
        private void initDate(){
            final List<String> list = new ArrayList<String>();
            list.add("汽车模型");
            list.add("汽车种类");
            list.add("关于");
            list.add("退出");
            listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
            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<?> adapterView, View view, int position, long l) {
    
                    showDrawerLayout();
                }
            });
            drawerLayout.openDrawer(Gravity.LEFT);//侧滑打开  不设置则不会默认打开
        }
    
        private void showDrawerLayout() {
            if (!drawerLayout.isDrawerOpen(Gravity.LEFT)) {
                drawerLayout.openDrawer(Gravity.LEFT);
            } else {
                drawerLayout.closeDrawer(Gravity.LEFT);
            }
        }
    }
    

     

    android studio给我们提供了侧边栏的选项

    如下-新建项目

    建完之后运行项目就可以实现侧边栏效果了。可供研究。

    展开全文
  • Toolbar 不要忘了添加支持库com.android.support:design:28.0.0 在styles.xml中添加配置 AppBarLayout DrawableLayout NavigationView 效果图

    Toolbar

    不要忘了添加支持库com.android.support:design:28.0.0
    在这里插入图片描述
    在styles.xml中添加配置
    在这里插入图片描述

    AppBarLayout

    在这里插入图片描述

    DrawableLayout

    在这里插入图片描述

    NavigationView

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    效果图

    在这里插入图片描述
    在这里插入图片描述

    TextInputLayout

    导包
    在这里插入图片描述
    在这里插入图片描述

    FloatingActionButton

    在这里插入图片描述

    Snackbar

    在这里插入图片描述

    第三方FloatingActionButton

    在这里插入图片描述
    在这里插入图片描述

    效果图

    在这里插入图片描述

    CoordinatorLayout

    使用了Coordinatorlayout作为父布局的Snackbar和FloatingActionButton
    在这里插入图片描述
    使用了CoordinatorLayout的第三方FloatingActionButton
    在这里插入图片描述

    展开全文
  • drawableLayout=侧滑

    2017-12-20 09:47:44
    public class MainActivity extends AppCompatActivity {  private DrawerLayout drawerLayout;  private ListView mLv;  private LinearLayout ll;  private GridView gv;  String[] tyeps = {
  • 在这一篇文章里,将会介绍如何使用DrawableLayout和toolBar打造一个具有侧滑效果的界面。参考了超简单方式打造策划菜单。  第一步,创建三个xml文件。toolBar.xml,content.xml,主布局文件(这个一般在我们创建...
  • Google 在2014年提出了 Material Design(MD) 的设计规范,根据MD做出来的UI效果炫酷,成了Android码农必不可少的利剑 今天我们的Demo也将使用动态导航图标+主色调匹配这样的技能,做出来的...1. 使用DrawableLayout
  • package com.mobile.security4.activity; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v4.view.GravityCompat; import android.support.v4.widget.DrawerLayou
  • 和普通的侧滑菜单一样,首先所有的布局都放在一个DrawableLayout中,面我们来看一下如何使用:在布局里把DrawableLayout作为父容器,只不过这次我们把侧滑菜单的布局用NavigationView来代替,代码如下: ...
  • 侧拉布局 &amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt; &amp;lt;android.support.v4.widget.DrawerLayout xmlns:android=&... android:layout_widt
  • 一. 在MainActivity.java中的代码: import android.support.v4.app.FragmentActivity; import android.support.v4.view.GravityCompat; import android.support.v4.widget.DrawerLayout; import android.os.Bundle...
  • 创建drawbler的布局文件初始化drawbler的列表响应drawable列表点击事件现在侧滑菜单使用很多,大都是通过SlidingMenu实现。...lt;?xml version="1.0" encoding="utf-8"?&...

空空如也

空空如也

1 2 3
收藏数 49
精华内容 19
关键字:

drawablelayout