adapter

Tornadofx学习笔记(2)——FxRecyclerView控件的打造

谁说胖子不能爱 提交于 2020-02-06 19:02:18
Tornadofx是基于javafx的一个kotlin框架,用来写些电脑版的小程序 基于Scroll Pane控件,仿造Android中的RecyclerView,实现的一款tornadofx的控件 github 需求 由于我的之前做的几个项目都是那种类似下载列表的功能, 蓝奏云批量下载 和 m3u8下载合并器 之所以抛弃了javafx的原因,是因为javafx中的动态添加控件比较麻烦,于是便是转到了tornadofx这个框架来。 tornadofx中动态添加控件的步骤虽然比javafx中要简单,但是,我还是觉得有些麻烦 于是我就参考了Android中的RecyclerView使用思路,打造出这个名为FxRecyclerView的控件,可以更加方便的动态进行控件的增删查改 功能介绍 动态添加ItemView 动态删除ItemView 动态更新itemView 快捷绑定单击/右击事件 功能演示 上波gif动态图就能很好说明了 1.添加一组数据 2.添加一个数据 3.指定坐标插入一个数据 4.更新指定坐标的数据 5.单击/右击事件 6.移出指定坐标数据/移出所有数据 测试的jar包 使用 1.复制FxRecyclerView源码 下载我下面给出的kt文件,复制到你的tornadofx项目中 FxRecyclerView.kt 2.创建bean类 这个没啥好说的

适配器模式(Adapter)

浪子不回头ぞ 提交于 2020-02-05 05:06:44
1.定义:   适配器模式是将一个类的接口转换成客户端希望的另一个接口,适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 结构与说明: Client:客户端,调用自己需要的领域接口Target。 Target:定义客户端需要的跟特定领域相关的接口。 Adaptee:已经存在的接口,但与客户端需要的特定领域接口不一致,需要被适配。 Adapter:适配器,把Adaptee适配成Client需要的Target。 2.代码示例   (1)已经存在的应用接口,需要被适配的类Adaptee 1 package com.apdater.example1; 2 /** 3 * 将要被适配的系统接口 4 * @author admin 5 * 6 */ 7 public class Adaptee { 8 9 public void specificRequest(){ 10 11 } 12 }   (2)客户端特定领域的接口 1 package com.apdater.example1; 2 /** 3 * 客户端特定领域的接口 4 * @author zhaohelong 5 * 6 */ 7 public interface Target { 8 public void request(); 9 }   (3)适配器 1 package com.apdater

学习进度总结(二)

前提是你 提交于 2020-02-02 22:39:57
今天看了同学发的android记账本实例教程,学习了基本的构件。知道了这个项目需要创建哪些文件以及它的架构,计划明天学习链接数据库操作,现在只能是些假的数据。对于项目里面用到的东西,我打多还是不熟悉,比如Adapt适配器,好多就没听说过,今天先了解一个大概,以后还得看看基础的东西。 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。在常见的View(ListView,GridView)等地方都需要用到Adapter。如下图直观的表达了Data、Adapter、View三者的关系 来源: https://www.cnblogs.com/mac-13/p/12253779.html

设计模式:控制反转IoC、依赖注入DI

大憨熊 提交于 2020-01-29 08:17:51
基本概念 控制反转 (Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。 其中最常见的方式叫做 依赖注入 (Dependency Injection,简称DI),还有一种方式叫“ 依赖查找 ”(Dependency Lookup)。 技术说明 Class A中用到了Class B的对象b,一般情况下,需要在A的代码中显式的new一个B的对象。 采用依赖注入技术之后,A的代码只需要定义一个私有的B对象,不需要直接new来获得这个对象,而是通过相关的容器控制程序来将B对象在外部new出来并注入到A类里的引用中。而具体获取的方法、对象被获取时的状态由配置文件(如XML)来指定。 举例 下面的代码中有一个 Database的类,它需要一个适配器来与数据库交互。我们在构造函数里实例化了适配器,从而产生了耦合。 <?php namespace Database ; class Database { protected $adapter ; public function __construct ( ) { $this - > adapter = new MySqlAdapter ; } } class MysqlAdapter { } 上面代码产生的问题: 1、如果现在要改变 adapter 生成方式,如需要用new

C++设计模式之适配器模式(adapter)(结构型)

萝らか妹 提交于 2020-01-26 06:41:41
一、结构型模式概述 结构型模式(Structural Pattern)描述如何将类或者对象结合在一起形成更大的结构,就像搭积木,可以通过简单积木的组合形成复杂的、功能更为强大的结构。 结构型模式可以分为 类结构型模式 和 对象结构型模式 : • 类结构型模式 关心 类的组合 ,由多个类可以组合成一个更大的系统,在类结构型模式中一般只存在 继承关系和实现 关系。 • 对象结构型模式 关心 类与对象的组合 ,通过关联关系使得在一个类中定义另一个类的实例对象,然后通过该对象调用其方法。根据“合成复用原则”,在系统中尽量使用关联关系来替代继承关系,因此大部分结构型模式都是对象结构型模式。 类适配器和对象适配器区别 类适配器的重点在于类,是通过构造一个继承Adaptee类来实现适配器的功能; 对象适配器的重点在于对象,是通过在直接包含Adaptee类来实现的,当需要调用特殊功能的时候直接使用Adapter中包含的那个Adaptee对象来调用特殊功能的方法即可。 注意事项: 类适配器使用多重继承对一个接口与另一个接口进行匹配。对象适配器依赖于对象组合。类适配器和对象适配器有不同的权衡。 类适配器 :A、用一个具体的Adapter类对Adaptee和Target进行匹配。结果是当我们想要匹配一个类以及所有它的子类时,类Adapter将不能胜任工作;B

Java设计模式 — 适配器模式(Adapter)

ε祈祈猫儿з 提交于 2020-01-26 06:15:28
适配器模式(Adapter) 把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。 介绍 用电器来打个比喻:有一个电器的插头是三脚的,而现有的插座是两孔的,要使插头插上插座,我们需要一个插头转换器,这个转换器即是适配器。 适配器模式涉及3个角色: 源(Adaptee):需要被适配的对象或类型,相当于插头。 适配器(Adapter):连接目标和源的中间对象,相当于插头转换器。 目标(Target):期待得到的目标,相当于插座。 工作中的场景 经常用来做旧系统改造和升级 如果我们的系统开发之后再也不需要维护,那么很多模式都是没必要的,但是不幸的是,事实却是维护一个系统的代价往往是开发一个系统的数倍。 1.类适配器模式 代码实现 源(Adaptee) public class Adaptee { public void method1 ( ) { System . out . println ( "method 1" ) ; } } 目标(Target) public interface Target { void method1 ( ) ; void method2 ( ) ; } 适配器(Adapter) public class Adapter extends Adaptee implements Target {

Getting session from HttpAdapter to Java based Adapter

故事扮演 提交于 2020-01-25 22:49:11
问题 Is there any way to get the session that is created in a httpAdapter into a java class in the adapter? I am connecting to a https://jazz.net/ with a httpadapter, but i now want to use some java code to connect to same url in the adapter. So i dont knw how to access the session already created. Here is my connection code: In javaScript, function login(){ var lpath = getLoginPath(); var input = { method : 'post', returnedContentType : 'html', path : lpath, parameters : { j_password : passwd, j

Getting session from HttpAdapter to Java based Adapter

扶醉桌前 提交于 2020-01-25 22:49:09
问题 Is there any way to get the session that is created in a httpAdapter into a java class in the adapter? I am connecting to a https://jazz.net/ with a httpadapter, but i now want to use some java code to connect to same url in the adapter. So i dont knw how to access the session already created. Here is my connection code: In javaScript, function login(){ var lpath = getLoginPath(); var input = { method : 'post', returnedContentType : 'html', path : lpath, parameters : { j_password : passwd, j

适配器模式(Adapter)

那年仲夏 提交于 2020-01-25 20:32:53
在现实生活中,经常出现两个对象因接口不兼容而不能在一起工作的实例,这时需要第三者进行适配。例如,讲中文的人同讲英文的人对话时需要一个翻译,用直流电的笔记本电脑接交流电源时需要一个电源适配器,用计算机访问照相机的 SD 内存卡时需要一个读卡器等。 在软件设计中也可能出现:需要开发的具有某种业务功能的组件在现有的组件库中已经存在,但它们与当前系统的接口规范不兼容,如果重新开发这些组件成本又很高,这时用适配器模式能很好地解决这些问题。 模式的定义与特点 适配器模式(Adapter)的定义如下:将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。适配器模式分为类结构型模式和对象结构型模式、接口的适配器模式三种,类结构型模式类之间的耦合度比后者高,且要求程序员了解现有组件库中的相关组件的内部结构,所以应用相对较少些。 该模式的主要优点如下。 客户端通过适配器可以透明地调用目标接口。 复用了现存的类,程序员不需要修改原有代码而重用现有的适配者类。 将目标类和适配者类解耦,解决了目标类和适配者类接口不一致的问题。 其缺点是:对类适配器来说,更换适配器的实现过程比较复杂。 模式的结构与实现 类适配器模式可采用多重继承方式实现,如c++可定义一个适配器类来同时继承当前系统的业务接口和现有组件库中已经存在的组件接口; java 不支持多继承

XmlAdapter for base64Binary results in String

我是研究僧i 提交于 2020-01-24 11:10:07
问题 I've an XSD file containing this: <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc" jaxb:extensionBindingPrefixes="xjc" elementFormDefault="qualified" targetNamespace="http://example.org/"> <xsd:complexType name="Certificate"> <xsd:sequence> <xsd:element name="certificate" type="xsd:base64Binary"> <xsd:annotation> <xsd:appinfo> <xjc:javaType name="java.security.cert.X509Certificate" adapter=