本文要实现微信6.1中点击顶部菜单栏的“+”号按钮时,会弹出一个列表框。这里用的了Activity实现,其实最好的方法可以用ActionBar,不过这货好像只支持3.0以后的版本。本文的接上文Android仿微信底部菜单栏+顶部菜单栏。

效果

一、仿微信下拉列表布局pop_dialog.xml

android:layout_width="wrap_content"

android:layout_height="wrap_content" >

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:layout_marginTop="45dp"

android:layout_marginRight="20dp">

android:id="@+id/id_pop_dialog_layout"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentRight="true"

android:layout_alignParentTop="true"

android:background="@drawable/pop_item_normal"

android:orientation="vertical" >

android:id="@+id/id_groupchat"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_marginLeft="5dp"

android:layout_marginRight="5dp"

android:layout_marginTop="5dp"

android:background="@drawable/pop_list_selector" >

android:id="@+id/id_imageView1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:layout_marginLeft="8dp"

android:src="@drawable/pop_group" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:padding="8dp"

android:text="发起聊天"

android:layout_gravity="center_vertical"

android:textColor="#fff"

android:textSize="16sp" />

android:id="@+id/id_imageView5"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/pop_line" />

android:id="@+id/id_addfrd"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_marginLeft="5dp"

android:layout_marginRight="5dp"

android:background="@drawable/pop_list_selector" >

android:id="@+id/id_imageView2"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:layout_marginLeft="8dp"

android:src="@drawable/pop_add" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:padding="8dp"

android:text="添加朋友"

android:layout_gravity="center_vertical"

android:textColor="#fff"

android:textSize="16sp" />

android:id="@+id/id_imageView5"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/pop_line" />

android:id="@+id/id_find"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_marginLeft="5dp"

android:layout_marginRight="5dp"

android:background="@drawable/pop_list_selector" >

android:id="@+id/id_imageView3"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:layout_marginLeft="8dp"

android:src="@drawable/pop_qrcode" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:padding="8dp"

android:text="扫一扫"

android:layout_gravity="center_vertical"

android:textColor="#fff"

android:textSize="16sp" />

android:id="@+id/id_imageView5"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/pop_line" />

android:id="@+id/id_feedback"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_marginBottom="3dp"

android:layout_marginLeft="5dp"

android:layout_marginRight="5dp"

android:background="@drawable/pop_list_selector" >

android:id="@+id/id_imageView4"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:layout_marginLeft="8dp"

android:src="@drawable/pop_feedback" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:padding="8dp"

android:text="帮助与反馈"

android:layout_gravity="center_vertical"

android:textColor="#fff"

android:textSize="16sp" />

其中,按下图片后变换颜色:

android:background="@drawable/pop_list_selector" >

pop_list_selector.xml如下

看看效果,这是去掉标题栏后的(也可以用代码去掉)

去掉标题栏的方法:

二、对应代码

pop_dialog.xml对应的代码为PopDialogActivity.java

如下:

package com.example.tabexample;

import android.app.Activity;

import android.os.Bundle;

import android.view.MotionEvent;

import android.view.View;

import android.view.Window;

import android.view.View.OnClickListener;

import android.widget.LinearLayout;

public class PopDialogActivity extends Activity implements OnClickListener{

//定义四个按钮区域

private LinearLayout mGroupChat;

private LinearLayout mAddFrd;

private LinearLayout mFind;

private LinearLayout mFeedBack;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.pop_dialog);

initView();

}

/**

* 初始化组件

*/

private void initView(){

//得到布局组件对象并设置监听事件

mGroupChat = (LinearLayout)findViewById(R.id.id_groupchat);

mAddFrd = (LinearLayout)findViewById(R.id.id_addfrd);

mFind = (LinearLayout)findViewById(R.id.id_find);

mFeedBack = (LinearLayout)findViewById(R.id.id_feedback);

mGroupChat.setOnClickListener(this);

mAddFrd.setOnClickListener(this);

mFind.setOnClickListener(this);

mFeedBack.setOnClickListener(this);

}

@Override

public boolean onTouchEvent(MotionEvent event){

finish();

return true;

}

@Override

public void onClick(View v) {

}

}

三、设置背景透明     如果单这样,当这个Activity出来后,就会把之前的Activity覆盖,但是如果把它背景设置成透明的不就可以了么?方法如下:

在AndroidManifest.xml中添加:

t;activity

android:name="com.example.tabexample.PopDialogActivity"

android:label="@string/app_name"

android:theme="@style/MyDialogStyleTop">

t;/activity>

其中

"@style/MyDialogStyleTop"是我自己定义的格式,在value/style下添加:

@null

true

false

true

@android:color/transparent

false

四、使用其实使用就是Activity的跳转了,方法很简单,一句:

startActivity(new Intent(MainActivity.this,PopDialogActivity.class));把这句放在“+”按钮的点击事件当中去,这里添加点击事件就不用说了,很简单,然后最终的效果如下:

本文已被整理到了《Android微信开发教程汇总》,欢迎大家学习阅读。

以上就是本文的全部内容,希望对大家学习Android软件编程有所帮助。

android 下拉菜单,Android仿微信实现下拉列表相关推荐

  1. android 美团下拉菜单,Android仿美团分类下拉菜单实例代码

    本文实例为大家分享了Android仿美团下拉菜单的实现代码,分类进行选择,供大家参考,具体内容如下 效果图 操作平台 AS2.0 第三方框架:butterknife build.gradle depe ...

  2. Android m 自定义下拉菜单,Android实现动画效果的自定义下拉菜单功能

    我们在购物APP里面设置收货地址时,都会有让我们选择省份及城市的下拉菜单项.今天我将使用Android原生的 Spinner 控件来实现一个自定义的下拉菜单功能,并配上一个透明渐变动画效果. 要实现的 ...

  3. android studio 下拉菜单,android studio 的下拉菜单Spinner使用详解

    一.认识Spinner Spinner其实就是一个列表选择框.不过Android的列表选择框并不需要显示下拉列表,而是相当于弹出一个菜单供用户选择. Spinner 与 Gallery 都继承了Abs ...

  4. android联动下拉菜单,Android spinner下拉框连动

    本代码主要功能 1. 向拉菜单 spinner添加数据 2.下拉菜单连动 以下是核心代码 //定义变量 private Spinner spinner3; private Spinner spinne ...

  5. android仿微信下拉二楼_Android仿微信下拉列表实现

    本文要实现微信6.1中点击顶部菜单栏的"+"号按钮时,会弹出一个列表框.这里用的了Activity实现,其实最好的方法可以用ActionBar,不过这货好像只支持3.0以后的版本. ...

  6. android 下拉菜单触发_Android实现三级联动下拉框 城市选择器(简单)

    主要实现办法:动态加载各级下拉值的适配器 在监听本级下拉框,当本级下拉框的选中值改变时,随之修改下级的适配器的绑定值 先贴出效果图: 主布局代码: xmlns:tools="http://s ...

  7. android下拉菜单刷新,android下拉刷新列表实现(pull to refresh)

    android中提供了ListView控件,listview能够为我们展现丰富的内容,有时候我们为了提升用户体检,需要更炫而且更好用户体验的效果,pull to refresh(下拉刷新列表效果)就应 ...

  8. android edittext 下拉菜单,Android 下拉列表 DropEditText

    软件介绍 一款可以在android上实现类似window上的下拉效果的组件,并且可以实现文本输入. 效果演示: 使用方法: 在布局文件配置: android:id="@+id/drop_ed ...

  9. android下拉菜单——选择星座

    [img]http://dl.iteye.com/upload/attachment/0084/4434/5fd89112-ec72-3b36-835e-589293b44648.png[/img] ...

最新文章

  1. 6.python探测Web服务质量方法之pycurl模块
  2. 如何测量情感和感觉(以及它们之间的区别)?
  3. 黑马程序员:java基础之装饰设计模式
  4. 设备服务器停止运行吗,服务器已停止响应是怎么回事
  5. Maven打包小技巧--持续更新
  6. java 拆箱_Java自动装箱拆箱
  7. python numpy sum函数,numpy.sum()的使用详解
  8. HTML5 飞秋官方下载 fps 也为咱国人争点脸
  9. 了解常见的网络架构图
  10. 遗传算法MATLAB工具箱的下载与安装
  11. 什么是Smartdrv程序
  12. 电脑计算机睡眠和休眠模式区别,电脑休眠和睡眠的区别?
  13. 爬取华尔街日报的历史数据并翻译
  14. 2203-python跳转,窗口图标,提示框,消息盒子
  15. 亚马逊显示在售商品为0怎么办?亚马逊新品货还没到就在售了
  16. spring boot参数校验 告别校验胶水代码
  17. 别总说CMS、G1,该聊聊ZGC了
  18. redhat各版本和下载地址
  19. 呕心沥血!open cv4.1.2添加contrib4.1.2扩展模块
  20. QML实现的支持动图的编辑器(比之前要好)

热门文章

  1. 从终端进入本地其他磁盘
  2. VB6生成Word文件
  3. 空间、维度、尺度和变换
  4. 计算机操作系统学习笔记 第二章、进程与线程
  5. 我们都一直行走在出走和回归的轮回里,每一步都是离开,每一步都是回来,每一条离家的路都是回家的路,每一座坟墓都是母亲。
  6. 判断一棵树是否为另一棵树的子树
  7. Dockerfile创建镜像文件
  8. php语言中计算字符串长度的函数是,php 语言中计算字符串长度函数是:
  9. 关于github page 建立博客访问404
  10. ZLMediaKit webRTC编译与测试