回调函数封装监听点击事件
3762 浏览 13 点赞 21 收藏
编写准备
- 定义接口如下
package com.llt.bottomnavigationf;
public interface OnItemClickListener {
//当前点击的索引值
void onTap(int index);
}
- 点击事件类
public class Scaffold {
public OnItemClickListener onItemClickListener;> 因为我是web前端开发人员用词可能不会特别准确,点击事件类就是 你需要传递数据的类里面的点击方法
在类中声明接口
package com.llt.bottomnavigationf;
import com.llt.bottomnavigationf.entity.AppBar;
import com.llt.bottomnavigationf.entity.Body;
import com.llt.bottomnavigationf.entity.BottomNavItem;
import com.llt.bottomnavigationf.entity.BottomNavigation;
import com.llt.bottomnavigationf.fraction.FractionUtil;
import com.llt.bottomnavigationf.util.LogUtil;
import ohos.aafwk.ability.AbilityForm;
import ohos.aafwk.ability.OnClickListener;
import ohos.aafwk.ability.ViewsStatus;
import ohos.aafwk.ability.fraction.FractionAbility;
import ohos.agp.components.*;
import ohos.agp.utils.Color;
import ohos.agp.utils.LayoutAlignment;
import java.util.ArrayList;
import java.util.List;
public class Scaffold {
//声明接口
public OnItemClickListener onItemClickListener;
//编写 自定义监听方法
public void setOnItemClickListener(OnItemClickListener listener){
//将实现接口传递给内部 的onItemClickListener 接口
this.onItemClickListener = listener;
}
public Scaffold() {
initBottom();//初始化
}
public void initBottom(){
/**
* scaffold 内的id
*/
DirectionalLayout scaffold_bottom_tabMenu_component =(DirectionalLayout)
parse.findComponentById(ResourceTable.Id_scaffold_bottom_tabMenu);
//绑定点击事件
bottomNavBarClick(scaffold_bottom_tabMenu_component ,1);
}
/**
* 按钮点击事件
* @param item 当前按钮
* @param index 当前激活索引值
*/
public void bottomNavBarClick(Component item, int index,List<Component> tabList){
//底部传递进来的数据
List<BottomNavItem> bottomNavItems = bottomNavigationBar.getBottomNavItems();
item.setClickedListener(component -> {
//点击传递数据 这里是回调函数参数赋值
onItemClickListener.onTap(index);
});
}
}
- 调用
Scaffold init = new Scaffold();
init.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onTap(int index) {
LogUtil.info("自定义监听", Integer.toString(index));
}
});©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。
分类
HarmonyOS
标签
回调函数
封装监听点击事件
相关推荐
子组件的点击事件,如何正确让父组件进行响应?
鸿蒙小助手
3507
0父组件的点击事件,如何让子组件进行响应?
鸿蒙小助手
7532
0如何在不影响自动换行的前提下给一段文字中的两个词变色并绑定不同的点击事件?
鸿蒙小助手
6999
0如何监听弱网情况事件?
鸿蒙小助手
9345
0宋你一朵小红花
我还没有写个人简介......
881
帖子
0
提问
1679
粉丝
最新发布
华为鸿蒙 HarmonyOS 6.0.0.108 SP2 Developer 版本新增 9 套桌面图标
2025-10-20 23:17:16 发布注意!华为开启鸿蒙6.0系统推送,稳定性提升
2025-10-14 15:10:36 发布热门推荐