The planetary and lunar ephemerides DE430 and DE431 are generated by fitting numerically integrated orbits of the Moon and planets to observations. The present-day lunar orbit is known to submeter accuracy through fitting lunar laser ranging data with an updated lunar gravity field from the Gravity Recovery and Interior Laboratory (GRAIL) mission. The orbits of the inner planets are known to subkilometer accuracy through fitting radio tracking measurements of spacecraft in orbit about them. Very
2026-02-09 23:32:49 112.61MB 星历数据
1
Android中的SnackBar是一个重要的UI组件,源自Design Support Library,它的主要作用是在界面底部提供短暂的通知,显示关键信息。SnackBar与Toast类似,但具有更多的交互性。它允许用户通过滑动手势来消除,同时还可以包含一个可点击的动作(Action),使得用户能够直接在通知中执行特定操作。 SnackBar的创建通常涉及以下步骤: 1. 调用`Snackbar.make()`方法,传入三个参数:要附加的父视图(通常是根布局)、要显示的文本消息和持续时间。持续时间可以是`Snackbar.LENGTH_SHORT`或`Snackbar.LENGTH_LONG`。 2. 使用`setAction()`方法添加一个可点击的Action,传入Action的文字和一个`View.OnClickListener`。当用户点击Action时,监听器的`onClick()`方法会被调用。 3. 可以使用`setActionTextColor()`来定制Action文字的颜色。 4. `setText()`方法用于设置SnackBar显示的主要文本信息。 5. `show()`方法显示SnackBar,`dismiss()`方法则用于清除它。 6. 为了处理更复杂的逻辑,如监听SnackBar的状态(显示或消失),可以使用`setCallback()`方法设置一个`Callback`,这可以是`Snackbar.Callback`的实例。 在实际应用中,例如上述描述的情景,SnackBar可以用于确认用户操作。例如,当用户点击删除按钮时,数据首先备份,然后从数据源中移除。接着,创建一个SnackBar询问用户是否要撤销删除,设置Action为“YES”。当用户点击“YES”时,数据将被恢复;如果SnackBar在没有被点击Action的情况下消失(例如,用户手动滑动消除或自然消失),则数据将从SQLite数据库中永久删除。 实现这一功能的关键在于监听Action的点击和SnackBar的状态。通过创建一个自定义的`OnClickListener`和`Callback`,可以分别处理Action的点击事件和SnackBar的消失事件。在`OnClickListener`中,根据用户点击“YES”的反馈恢复数据;在`Callback`中,监听SnackBar的`onDismissed()`方法,检查是否是因为用户未点击Action导致的消失,如果是,则执行相应的删除操作。 SnackBar是Android设计支持库中增强用户体验的一个实用工具,它提供了更丰富的交互方式和更直观的反馈机制,使得用户能够直接在通知中进行操作,而不仅仅是查看信息。通过灵活地设置Action和回调,开发者可以构建出更加用户友好的界面交互流程。
2026-02-09 23:30:52 65KB Android SnackBar
1
STC8H8K64U是一款8位单片机,属于STC系列,拥有较为强大的性能和丰富的外设资源,广泛应用于各类电子项目中。ISP(In-System Programming,系统内编程)是指能够在目标板上直接对芯片进行编程的技术,无需将芯片从电路板上拆卸下来。该技术对于产品的升级与维护提供了极大的便利。 免复位自动ISP下载范例的实质是一种在不需要人为干预下,通过特定的硬件连接和软件编程,实现单片机程序的自动下载。这种技术通常涉及到串口通信以及一定的硬件握手协议。在硬件方面,可能需要设计特定的电路来实现单片机与编程器或电脑之间的信号转换和传输;在软件方面,则需要编写相应的程序来控制单片机接收数据并进行编程。 在上述范例中,可能会包含以下几个关键步骤和技术要点: 1. 电路设计:设计电路以实现单片机与PC端的通信,这通常涉及到串口连接。需要确保电路可以稳定地与外部设备通信。 2. ISP接口定义:对ISP接口进行定义,规定好引脚的功能和连接方式,以及如何进行握手信号的检测。 3. 软件开发环境搭建:搭建用于编写和编译单片机程序的软件环境,如Keil uVision等。在该环境中创建项目并配置单片机型号。 4. 编程代码编写:编写用于实现免复位自动ISP下载功能的代码。这通常包括串口通信程序、数据接收程序以及烧写程序等。 5. 自动下载协议设计:设计一套可靠的自动下载协议,该协议可能包括一系列的信号检测和控制命令,用以在不进行手动复位的情况下,让单片机进入编程模式,并自动完成固件的下载和烧写。 6. 下载器硬件设计:如果使用特定的下载器硬件,则还需要考虑下载器与单片机的通信协议,以及如何让下载器识别单片机的烧写信号。 7. 测试与调试:在完成上述步骤后,需要进行反复的测试和调试,确保免复位自动ISP下载功能可以稳定可靠地运行。 8. 用户文档编写:编写用户使用手册,指导用户如何使用该范例进行下载操作。 在压缩包中提到的文件名“main.uvproj”暗示了使用了Keil uVision软件生成的项目文件,而“src”文件夹可能包含了源代码文件,用于存放程序的源代码。而“target”则可能是一个特定的目标文件夹,用于存放编译后的文件和程序烧写的二进制文件。 此外,需要注意的是,ISP下载和自动下载功能可能需要单片机内部的某些外设支持,例如,定时器、串口等,这也需要在编程时予以考虑。 STC8H8K64U免复位自动ISP下载范例展示了如何在不需要人为复位的情况下,通过特定的程序和硬件配置,实现单片机程序的自动下载和烧写。这项技术对于需要频繁更新程序或在生产环境中批量烧写固件的场景尤为重要。通过这种方式,可以大幅度提高生产效率和程序更新的便捷性。
2026-02-09 23:23:58 16KB
1
Air780E开发板原理图V1.5(pdf版)
2026-02-09 23:12:58 262KB
1
主要给大家介绍了关于Android中如何指定SnackBar在屏幕的位置,以及一个小问题解决的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。 在Android开发中,SnackBar是一个轻量级的通知组件,通常用于向用户显示短暂的信息或操作提示。默认情况下,SnackBar会出现在屏幕底部,但它可以根据需求进行位置调整。本篇文章将深入探讨如何在Android中指定SnackBar的位置,并解决可能出现的小问题。 要指定SnackBar的位置,我们需要将其嵌套在一个`android.support.design.widget.CoordinatorLayout`中。`CoordinatorLayout`是一个布局管理器,它允许子视图之间进行复杂的协调行为,包括SnackBar的位置调整。以下是如何在XML布局文件中添加`CoordinatorLayout`的示例: ```xml ``` 然后,在代码中创建SnackBar时,使用`myCoordinatorLayout`作为参数传递给`Snackbar.make()`方法: ```java final View viewPos = findViewById(R.id.myCoordinatorLayout); Snackbar.make(viewPos, R.string.snackbar_text, Snackbar.LENGTH_LONG) .setAction(R.string.snackbar_action_undo, showListener) .show(); ``` 通过修改`CoordinatorLayout`的属性,如`android:paddingBottom`,可以间接影响SnackBar的位置。例如,增加底部内边距会使SnackBar相对于屏幕底部的位置上移。 然而,当面临显示位置的小问题时,特别是当软键盘弹出时,SnackBar可能会被遮挡。为了解决这个问题,可以尝试更改SnackBar的布局引力(Gravity)。例如,将`android:layout_gravity`设置为`top`可以使SnackBar显示在屏幕顶部,但这可能需要额外的代码来处理显示和隐藏的动画。 在某些情况下,直接修改系统的显示行为可能会比较复杂,这时可以考虑使用第三方库,比如`TSnackBar`(https://github.com/AndreiD/TSnackBar)。这个库提供了更多的自定义选项,并且已经处理了显示位置和动画效果。只需将`android:layout_gravity="bottom"`更改为`android:layout_gravity="top"`,即可实现SnackBar在屏幕顶部显示。 通过正确使用`CoordinatorLayout`和自定义布局参数,我们可以灵活地控制SnackBar在Android屏幕上的位置。同时,第三方库提供了一种更简便的方式,帮助开发者快速实现特定的显示需求,尤其是在处理键盘遮挡问题时。在实际开发中,根据项目需求选择合适的方法,既能保证用户体验,又能提高开发效率。
2026-02-09 23:12:36 57KB android android snackbar使用 android
1
KiCad, AB2技术创建的KiCad模块,库和模板 KiCadKiCad模块,库,模板和AB2技术创建的3D 模型。http://www.ab2tech.com 描述因为我们想拥抱一个完全开放的开源解决方案,所以我们开始使用 KiCad 。 它是一个强大的工具,完全能够作为P
2026-02-09 23:06:19 5.9MB
1
本例程,主要是,用jqgrid 实现grid及subgrid数据列表的分页,增,删,改,查,定制显示列的功能 用jqueryUI 实现 上下左的布局 数据库及源码都在上传的RAR包中 由于上传空间的问题,JAR包不做上传,大家可以自己添加 spring 2.0.1 ,hibernate3.0,strutd1.2,相关JAR包; 及c3p0-0.9.1.2.jar, mysql-connector-java-5.1.10-bin.jar 。 当时写的时候用的是JDK1.4,没有在JDK1.5下做测试,但在jdk1.5下应该没什么大问题,最多出现语法错误。 用的UTF-8编码。 有问题可在下载页面的评论处留言,有时间我会来看看,并回复。 或者要JAR包及问题,可发mail:lilei9963@163.com
2026-02-09 22:13:08 732KB jqGrid jqueryUi jquery
1
Tailscale Android客户端 专用WireGuard:registered:网络变得简单 概述 该存储库包含开源的Tailscale Android客户端。 使用 建造 , , 是必需的。 $ make tailscale-debug.apk $ adb install -r tailscale-debug.apk dockershell目标将构建具有必要依赖项的容器,并在其中运行外壳程序。 $ make dockershell # make tailscale-debug.apk 使用make tag_release更改Android版本代码,更新版本名称并标记当前提交。 我们仅保证在模块模式下支持最新的Go版本以及所有Go Beta或版本候选版本(当前为Go 1.14)。 它可能在早期的Go版本中或在GOPATH模式下都可以工作,但是我们没有做出任何努力来保持这些工作。 Googl
2026-02-09 22:04:44 810KB android chromeos wireguard
1
本文介绍了R语言中用于轨迹分析的两个主要包traj和lcmm的功能及区别。轨迹分析是将重复测量数据归纳为分类变量,如术后疼痛评分轨迹,用于预测疾病预后。traj包通过三步流程(计算指标、选择指标、聚类)进行轨迹拟合,适合简单分析需求;lcmm包则使用hlme函数处理纵向数据,能建立预测模型。两者可独立或结合使用,为研究者提供灵活的分析选择。 在数据分析领域,尤其在生物统计和医学研究中,轨迹分析是一种重要的工具,它允许研究者追踪个体在一段时间内的特征变化。在R语言这个统计计算和图形环境中,存在多个专门用于轨迹分析的软件包。本文档中提到的两个主要包是traj和lcmm,它们各自以其独特的方法和功能,帮助研究者进行数据分析。 traj包是R语言中一个用于轨迹分析的工具,它的设计旨在通过一系列步骤来识别和分析数据中的模式。它采用了三步流程,包括计算指标、选择指标、聚类,这三个步骤共同作用于轨迹拟合的过程。这种方法适用于相对简单的需求,比如分类变量的归纳、术后疼痛评分的轨迹分析等。traj包的步骤简明,易于操作,使得它成为初学者或是需要快速获得结果的用户的理想选择。 另一方面,lcmm包则提供了更为复杂和强大的分析能力。它主要通过一个核心函数hlme,即多层次混合效应模型,来处理纵向数据。这种模型能够更好地适应数据中潜在的非线性变化趋势,同时也能够考虑个体间的变异。lcmm包特别适合用于建立预测模型,比如疾病预后的分析,因为它不仅能够处理复杂的数据结构,还能够预测轨迹的发展方向。 在实际应用中,traj和lcmm包可以独立使用,分别满足不同分析需求。traj包适合于快速、初步的分析,而lcmm包则适合深入、精细的研究。此外,它们也可以结合起来使用,以实现更加全面的数据分析。例如,研究者可以先使用traj包进行初步的轨迹分类,然后用lcmm包来进一步探索每个轨迹内部的复杂关系。 由于R语言的开源特性,用户可以自由获取这些软件包的源代码,并可以根据自己的具体需求进行修改和扩展。这样的灵活性使得traj和lcmm包成为生物统计和医学研究领域中非常有价值的工具。研究者可以根据自己的数据特点和研究目标,选择合适的包进行轨迹分析,从而在数据分析中得到更为精确和有用的结果。 两个包各有优势和特点,用户在选择使用时应根据自身的数据分析需求来决定。traj包以其简洁的三步分析流程为用户提供了一种快速而直观的数据分析途径;而lcmm包则通过hlme函数提供了更为复杂和强大的纵向数据分析能力。这些分析方法在诸如医疗研究、疾病预后评估等领域中具有广泛的应用,为研究者提供了一种强有力的分析手段,以期获得更为深入和精准的医学见解。
2026-02-09 21:45:42 3KB 软件开发 源码
1
SIP提供了一种在异构网络上部署流媒体业务和视频会议业务时通用的信令控制协议,使得流媒体、视频会议、VoIP、IPTV等这些基于会话控制的业务与具体的接入手段和底层网络无关。这就为在NGN网络上、3G网络上以及IPv6网络上利用统一的技术架构和业务平台来提供这些多媒体业务成为可能。同时把现有的纵向方式的业务提供系统改变为横向的业务提供系统,这将加快业务开发和业务提供的速度,为运营商从基础业务提供商向综合信息服务提供商的转变提供技术支撑。 SIP(Session Initiation Protocol)协议是下一代网络(NGN)技术中的核心组件,它主要负责在异构网络上统一部署视频会议和流媒体服务。SIP最初由MMUSIC IETF工作组于1995年研究,后来在1999年由IETF提议成为标准。该协议因其易读性、灵活性、扩展性和稳定性而受到广泛青睐,特别是在互联网应用中。 在视频会议和流媒体业务的实现中,SIP协议承担着会话初始化和控制的关键角色。它通过发送和接收SIP消息来建立、维护和终止会话。这些消息由消息头和消息体组成,其中消息头包含呼叫控制信息,而消息体通常携带SDP(Session Description Protocol)信息。SDP用于描述多媒体会话的媒体流细节,如会话名称、目的、媒体类型、接收地址、端口和带宽等。此外,SIP消息体还可以承载其他类型的信息,如文本、MIME邮件,甚至扩展到即时消息和呈现业务,如SIMPLE协议就是SIP针对即时消息和呈现服务的扩展。 视频会议系统通过软交换框架实现统一,这包括传统的PSTN视频业务、ISDN视频业务、专线高清视频业务以及基于IP的视频业务。IP视频会议系统由于其更好的带宽、质量和经济性,逐渐成为首选,特别是在与企业IT环境集成后,能够提供包括音频、视频和数据在内的三重服务。 软交换系统通过媒体网关(TG和AG)连接到PSTN网络,将传统会议系统转换为IP网络上的RTP包,实现与现有系统的兼容。同时,通过软交换业务平台,可以开发应用程序来实现与各种视频会议系统(如H.323系统)的互通,以及与即时通信和呈现服务的整合,如文字聊天和用户状态共享,进一步提升多媒体会议体验。 此外,SIP在流媒体服务中的应用也十分广泛,如IPTV和VoIP。通过SIP协议,可以将这些基于会话控制的业务与具体的接入手段和底层网络解耦,使得服务提供更加灵活,业务开发速度更快。这对于运营商从基础业务提供商转变为综合信息服务提供商至关重要,因为它简化了业务架构,加速了新服务的上市时间。 SIP协议在视频会议和流媒体服务中的应用,通过其通用性和可扩展性,促进了不同系统之间的融合,实现了下一代网络中的多媒体业务统一。这一技术进步不仅提升了用户体验,也为运营商提供了更高效、更经济的业务部署策略。
2026-02-09 21:43:52 34KB 网络
1