android 自定义menu菜单,来实现android自定义的menu菜单之二:为自定义menu中的线性布局添加事件...

接着上一篇文章,我们实现了自定义的menu菜单。

其中,包括了三部分:分别是 关于,设置 和退出。看过上一篇文章的童鞋会知道这三部分分别是由三个线性布局构成的。每一个线性布局里面包括一个ImageView和一个TextView两个控件。

本篇文章要实现的内容就是给自定义menu添加单击事件。

即:单击关于的时候 会弹出一个 对话框;单击 设置区域 会跳转到另一个设置页面;单击退出,就退出该应用。

那么,文首已经介绍过,每一个部分是由一个线性布局构成,每一个线性布局里面包括一个ImageView和一个TextView两个控件。那么怎么添加事件呢?是给每一个控件单独添加吗?

单独添加也可以,但是比较麻烦。比较简单的办法就是给该部分所在的布局添加事件就可以了。

我在这里再次贴出自定义menu的布局文件(layout_custom_menu.xml):

android:id="@+id/zong"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:background="#C1CDC1"

android:baselineAligned="false"

android:gravity="center_horizontal"

android:orientation="horizontal" >

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:background="#A1A1A1"

android:gravity="center_horizontal"

android:layout_marginTop="1dp"

android:orientation="horizontal" >

android:id="@+id/guanyu"

android:clickable="true"

android:layout_width="106dp" android:layout_height="wrap_content"

android:orientation="vertical" android:gravity="center_horizontal"

android:layout_marginRight="1dp"

android:layout_marginLeft="1dip"

android:layout_marginTop="1dp"

android:layout_gravity="fill_horizontal"

android:background="#00868B"

>

android:id="@+id/menu_item_iv_helper"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/menu_about"

/>

android:id="@+id/menu_item_txt_helper"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textColor="#ff222222"

android:text="关于"

/>

android:id="@+id/shezhi"

android:layout_width="106dp" android:layout_height="wrap_content"

android:orientation="vertical" android:gravity="center_horizontal"

android:layout_marginRight="1dp"

android:layout_marginTop="1dp"

android:layout_gravity="fill_horizontal"

android:background="#00868B"

>

android:id="@+id/menu_item_iv_feedback"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/menu_shezhi"

/>

android:id="@+id/menu_item_txt_feedback"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textColor="#ff222222"

android:text="设置"

/>

android:id="@+id/tuichu"

android:layout_width="106dp" android:layout_height="wrap_content"

android:orientation="vertical" android:gravity="center_horizontal"

android:layout_marginTop="1dp"

android:layout_marginRight="1dp"

android:layout_gravity="fill_horizontal"

android:background="#00868B"

>

android:id="@+id/menu_item_iv_exit"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/menu_logout"

/>

android:id="@+id/menu_item_txt_exit"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textColor="#ff222222"

android:text="退出"

/>

从布局文件中,我们可以看出,我分别为三部分的线性布局分别添加了id,分别为:

关于:

android:id

=

“@+id/guanyu”

设置:android:id

=

“@+id/shezhi”

退出:android:id

=

“@+id/tuichu”

有了线性布局的id号,我们就可以直接来为该布局添加事件了。

在CustomMenu.java中添加:

//分别获取这个布局

LinearLayout gy = (LinearLayout)view.findViewById(R.id. guanyu);

LinearLayout sz = (LinearLayout)view.findViewById(R.id. shezhi);

LinearLayout tc = (LinearLayout)view.findViewById(R.id. tuichu);

//接下来就可以直接写onclick事件了:

gy.setOnClickListener( new OnClickListener(){

public void onClick(View v) {

// TODO do somthing

}

});

sz.setOnClickListener( new OnClickListener(){

public void onClick(View v) {

// TODO do somthing

}

});

tc.setOnClickListener( new OnClickListener(){

public void onClick(View v) {

// TODO do somthing

}

});

具体在onClick事件里怎么写,就看大家的需求了,我这里就不必再详细赘述了。

下面,贴一下点击关于后的弹出框的效果:

28545d150d94cfb6501095801012df18.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值