当前位置: 首页 > news >正文

一般自己怎么做网站电子商务网站开发教程课后答案

一般自己怎么做网站,电子商务网站开发教程课后答案,深圳找人做网站,c 网站开发视频教程一、原生组件回调 JS 层提供的事件方法 比如 TextInput 组件 onChangeText 属性#xff0c;输入事件是发生在原生层的但是需要通知 JS 层发生了变化#xff0c;并执行 JS 层的方法。 1、给原生组件添加一个按钮用于触发原生事件方法 在 XML 中添加一个按钮 为了方便让 Inf…一、原生组件回调 JS 层提供的事件方法 比如 TextInput 组件 onChangeText 属性输入事件是发生在原生层的但是需要通知 JS 层发生了变化并执行 JS 层的方法。 1、给原生组件添加一个按钮用于触发原生事件方法 在 XML 中添加一个按钮 为了方便让 InfoView 的类继承自 LinearLayout 类并实现 View.OnClickListener 点击事件处理的接口就可以在点击时执行特定的逻辑。 public class InfoView extends LinearLayout implements View.OnClickListener {}到这里就已经完成了原生事件的编写可以点击按钮切换头像的形状。但是原生事件执行了 JS 层现在并不知道这件事已经发生了。 2、告诉 JS 层发生了切换形状的事件并传入事件参数告知是什么形状 // 创建一个可写的事件参数映射 WritableMap eventParams Arguments.createMap(); eventParams.putString(shape, this.shape); // 获取当前视图的 ReactContext ReactContext context (ReactContext) getContext(); // 通过 ReactContext 获取 RCTEventEmitter 模块并使用 receiveEvent 方法发送事件 context.getJSModule(RCTEventEmitter.class).receiveEvent(getId(), onShapeChange, eventParams); 所有的视图、属性、事件都必须经过 InfoViewManager 进行管理还需要在 InfoViewManger 中管理该事件。 NullableOverridepublic Map getExportedCustomBubblingEventTypeConstants() {return MapBuilder.builder().put(onShapeChange,MapBuilder.of(phasedRegistrationNames,MapBuilder.of(bubbled, onShapeChange)))// to-do 继续 put.build();}getExportedCustomBubblingEventTypeConstants 方法返回一个映射其中包含了你自定义冒泡事件类型的信息。在这里定义了一个名为 “onShapeChange” 的事件并将其关联到 “onShapeChange” 冒泡阶段。 这是一个相对固定的写法只需替换 “onShapeChange” 为自定义事件名。这样在 JavaScript 层就可以监听和处理这个自定义冒泡事件。 3、在业务使用该时事件回调 效果 二、公开原生组件方法给 JS 层调用 export default () {const ref useRef(null);useEffect(() {setTimeout(() {sendCommand(setShape, [round]);}, 3000);}, []);const sendCommand (command: string, params: any[]) {const viewId findNodeHandle(ref.current);// ts-ignoreconst commands UIManager.NativeInfoView.Commands[command].toString();UIManager.dispatchViewManagerCommand(viewId, commands, params);}return (NativeInfoViewref{ref}style{styles.infoView}avatar{avatarUri}descxxxonShapeChange{(e: any) {console.log(e.nativeEvent.shape);}}/); }receiveCommand 方法是 React Native 中用于处理来自 JavaScript 层的命令commands的方法。 InfoViewManager.java public class InfoViewManager extends SimpleViewManagerInfoView {NullableOverridepublic MapString, Integer getCommandsMap() {return MapBuilder.of(setShape, SET_SHAPE_CODE);}Overridepublic void receiveCommand( NonNull InfoView view, String commandId, Nullable ReadableArray args) {int command Integer.parseInt(commandId);if (command SET_SHAPE_CODE) {if (args ! null args.size() 0) {String shape args.getString(0);view.setShape(shape);}} else {// TODOsuper.receiveCommand(view, commandId, args);}}public static final int SET_SHAPE_CODE 100; }InfoView.java public void setShape(String shape) {this.shape shape;Glide.with(this).load(this.url).transform(shape circle? new CircleCrop(): new RoundedCorners(30)).into(avatarImg);}
http://www.pierceye.com/news/816950/

相关文章:

  • dw做网站背景音乐wordpress 获取当前文章id
  • 上海鹭城建设集团网站icp备案查询
  • 企业站用什么程序做网站深圳手机报价网站
  • 网站开发国外研究状况建设部相关网站
  • 租赁网站开发台州网站优化
  • 网站开发人员工工资网站开发一个支付功能要好多钱
  • 工程建设管理网站源码网站怎样做地理位置定位
  • 太仓公司网站建设电话网络公关名词解释
  • 江门网站建设策划什么是网络营销职能
  • 北京网站托管毕设做网站是不是太low
  • 企业网站建设费用属管理费用吗重庆网站建设制作设计公司哪家好
  • 深圳营销型网站需要多少钱做网站个体户经营范围
  • php 手机网站 上传图片晋州做网站的联系电话
  • 云天下网站建设做抖音seo排名软件是否合法
  • 网站开发合同管辖权异议龙岩网上办事大厅官网
  • 建网站费用明细海口建设网站
  • 网站页面设计说明怎么写影视小程序源码
  • 传媒网站制作网站申请建设
  • 前端做项目的网站新密市城乡建设局网站
  • 网站app建设方案智能外呼系统
  • 创建网站免费注册wordpress 熊掌号代码
  • 的广州建网站的公司黄山市网站建设
  • 做网站外包需要提供什么登录百度账号
  • 网站备案要买备案号西安鑫瀚通网站建设
  • 做网站的公司违约怎么处理免费免费网站模板
  • 动漫网站建设方案项目书目录做网站站长先把作息和身体搞好
  • 网站建设说明书网页制作成品图加代码
  • 中国网站设计师联盟福州网站大全
  • 香奈儿网站建设竞价培训
  • 毕业设计做网站的步骤电脑培训学校在哪里