day14

上下文菜单与上下文操作模式
1、创建上下文菜单时,Fragment的回调方法类似于用于选项菜单的回调方法,要实例化生 成一个上下文菜单,可使用以下方法:
public void onCreateContextMenu(ContextMenu menu, View v,  ContextMenu.ContextMenuInfo menuInfo)
响应用户的上下文菜单选择,可实现以下Fragment方法:
public boolean onContextItemSelected(MenuItem item)


2、默认情况下,长按视图不会触发上下文菜单的创建。要触发菜单的创建,必须调用以下Fragment方法为浮动上下文菜单登记一个视图:

public void registerForContextMenu(View view)该方法传入触发上下文菜单的视图。


3、为ListView设置一个实现AbsLIstView.MultiChoiceModeListener接口的监听器。该接口包含以下回调方法,视图在选中或者撤销选中时会触发它:

public abstract void onItemCheckStateChange(ActionMode mode, int position,  long id, boolean checked)
MultiChoiceModeListener接口实现了另一个接口,即ActionMode.Callback。用户在屏幕 进入上下文操作模式时,会创建一个ActionMode类实例。随后在生命周期内, ActionMode.Callback接口的回调方法会在不同时间点被调用。以下为 ActionMode.Callback接口中必须实现的四个方法:


public abstract boolean onCreateActioMode(ActionMode mode, Menu menu)

在ActionMode对象创建后调用。也是实例化上下文菜单资源,并显示在上下文操作栏上的 任务完成的地方。


public abstract boolean onPrepareActionMode(ActionMode mode, Menu menu)

在onCreateActionMode(。。。)方法之后,以及当前上下文操作栏需要刷新数据时调用


public abstract boolean onActionItemClicked(ActionMode mode, MenuItem item)

在用户选中某个菜单项操作时调用。是响应上下文菜单项操作的地方。

public abstract void DestroyActionMode(ActionMode mode)

在用户退出上下文操作模式或所选菜单项操作已被响应,从而导致ActionMode对象将要销 毁时调用。默认的实现会导致已选视图被反选。这里,也可完成在上下文操作模式下,响 应菜单项操作而引发的相应fragment更新。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值