android背景省略drawable
带来安定的是两种力量:法律和礼貌。——歌德 https://github.com/JavaNoober/BackgroundLibrary 作为一个android程序员,对于shape、selector这两个标签一定不陌生。每当UI设计师给我们设计出一个个button背景的时候,我们就需要去drawable文件夹下去新建一个bg_xxx.xml,然后很多时候区别仅仅是一个边框的颜色或者填充的颜色。这就导致了很多非常相似的.xml文件产生。 网上之前也有了一种通过自定义View,在xml中通过设置属性达到shape效果的控件。但是这种自定义的控件不太灵活,归根到底是一个自定义的button,如果我想改造项目的话就得去替换原有的button或者textView。接下来就给大家提供一种更加简单的方式:无需自定义View,直接添加属性便可以实现shape、selector效果。 依赖方式: 123456789allprojects { repositories { ... maven { url 'https:...
安卓下拉刷新组件
当一个民族破灭,心理上退化时,便会衍生恶德德奢侈。——尼采 是这个组件: https://github.com/scwang90/SmartRefreshLayout/ 这里我用到了自定义 RefreshHeader 12345 ClassicsHeader classicsHeader = new ClassicsHeader(context);classicsHeader.setEnableLastTime(false);classicsHeader.setArrowResource(R.mipmap.foo);classicsHeader.setProgressResource(R.mipmap.bar);binding.smartRefreshLayout.setRefreshHeader(classicsHeader);//设置Header 然后xml 12345678910<!-- SmartRefreshLayout containing the ObservableRecyclerView --> <com.scwang...
android studio logcat技巧
对人民来说,唯一的权利是法律,对个人来说唯一的权利是良心。——雨果 很多朋友不会用 LogCat 看日志 View logs with Logcat | Android Studio | Android Developers 这个是官方文档,例如这里可以反向筛选: 1level:error -tag:DeviceDoctorHandler -tag:AndroidRuntime -tag:OOMEventManager -tag:MiuiFastConnectService -tag:.gms.persisten -tag:ANDR-PERF -tag:SELinux -tag:GCM -tag:libc 这里就是筛选出除了后面一大串 Tag 的 Error 等级日志 译文: 使用Logcat查看日志Android Studio 中的 Logcat 窗口通过实时显示来自设备的日志来帮助您调试应用程序,例如,使用 Log 类添加到应用程序的消息、来自在 Android 上运行的服务的消息、或系统消息,例如发生垃圾收集时。当应用程...
Apache Fury
得道者多助,失道者寡助。——孟子 https://fury.apache.org/ Apache Fury 是一个 Java 序列化库,它提供了线程安全和高性能的序列化解决方案。在这个示例中,我们通过继承一个抽象序列化类来实现自定义的序列化逻辑。 例如 我们定义了一个 FurySerialize 类,它扩展了一个抽象的 AbsSerialize 类。这个类实现了两个主要方法:encode 用于将对象序列化成字节,而 decode 用于将字节反序列化成对象。 1234567891011121314151617181920212223242526public class FurySerialize extends AbsSerialize { private static ThreadSafeFury fury; static { fury = Fury.builder() .withLanguage(Language.JAVA) .withRefTracking(true) ...
git修改上次提交时间
滴水可以汇成江河,粒米可以聚成谷仓。——萨迪 当你需要修改 Git 提交的时间,可以根据不同的场景采用不同的方法。下面按场景分类详细介绍各种情况的操作步骤。 在未推送之前修改提交时间修改最近一次提交的时间如果你的提交还没有被推送到远程仓库,修改最近一次提交的时间相对简单: 1git commit --amend --no-edit --date="2024-05-04T01:49:20" 这个命令会更新最后一次提交的时间,而不更改提交信息。 修改未提交的更改如果你有更改尚未提交,需要先进行提交。可以先正常提交,然后立即修改这个新提交的时间: 12git commit -m "Your commit message"git commit --amend --no-edit --date="2024-05-04T01:49:20" 已推送到远程仓库后修改提交时间修改最近一次已推送的提交如果修改的是已经推送到远程的最近一次提交,你需要小心操作,因为这会改变提交的哈希值。操作步骤如下: 12git commit --am...
未来或将用Markdown写JavaDoc
当囊空如洗时才开始节约的话,那就为时太晚了。——塞内加 提案链接:JEP 467: Markdown Documentation Comments 1995 年的 HTML 写 JavaDoc 到现在已经快过时啦,于是 Jonathan Gibbons 提议用 Markdown 写 JavaDoc。目前这个提议在“Proposed to Target”状态,根据社区反响,这个提议很大概率能在 Java SE 23 版本中发布。 新的文档注释将使用 /// 而不是传统的 /** ... */。这样做的好处是: 避免了在文档注释中使用传统注释(如 /*...*/)可能引发的问题。 消除了使用星号的传统注释可能带来的 Markdown 语法冲突。 下面的 JavaDoc 和 Markdown 版本的文档注释对比。 JavaDoc 版本: 1234567/** * Returns a hash code value for the object. This method is * supported for the benefit of hash tables such as t...
spring提供的SQL工具类执行SQL脚本
方向是比速度更重要的追求。——白岩松 这里主要是用到了org.springframework.jdbc.datasource.init.ScriptUtils#executeSqlScript(java.sql.Connection, org.springframework.core.io.Resource)方法 例如 123456 @BeforeAllstatic void setup(@Autowired DataSource dataSource) throws Exception { JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource); assertNotNull(jdbcTemplate.getDataSource()); ScriptUtils.executeSqlScript(jdbcTemplate.getDataSource().getConnection(), new ClassPathResource("init.sql"));}...
android中UseCompoundDrawables警告
促使一个人值得信任的唯一方式就是信任他。——史汀生 在Android开发中,如果你看到 UseCompoundDrawables 这类的提示或警告,它通常来自于Android Lint工具,这是一种代码质量检测工具,用于指出可以优化的代码实践。UseCompoundDrawables 警告提示你可以使用 TextView 的 compound drawables 功能,而不是在布局中单独使用一个 ImageView 和 TextView。 TextView 提供了一种方式来直接在文本周围放置图标(上、下、左、右),这可以通过在TextView中使用 android:drawableLeft、android:drawableRight、android:drawableTop 或 android:drawableBottom 属性来实现。使用这种方式比起分别放置 ImageView 和 TextView 更有效率,因为它减少了布局层次结构的复杂性,并且可以提升渲染性能。 假设你有一个 TextView 和一个图标显示性别,而你当前是这样布置的: 12345678910111213...
自动加空格
这个世界上没有无用的齿轮,也只有齿轮本身能决定自己的用途。——《嫌疑犯X的献身》 https://github.com/vinta/pangu.js?tab=readme-ov-file 这个库pangu 如果你跟我一樣,每次看到網頁上的中文字和英文、數字、符號擠在一塊,就會坐立難安,忍不住想在它們之間加個空格。這個外掛(支援 Chrome 和 Firefox)正是你在網路世界走跳所需要的東西,它會自動替你在網頁中所有的中文字和半形的英文、數字、符號之間插入空白。 漢學家稱這個空白字元為「盤古之白」,因為它劈開了全形字和半形字之間的混沌。另有研究顯示,打字的時候不喜歡在中文和英文之間加空格的人,感情路都走得很辛苦,有七成的比例會在 34 歲的時候跟自己不愛的人結婚,而其餘三成的人最後只能把遺產留給自己的貓。畢竟愛情跟書寫都需要適時地留白。 與大家共勉之。 安装 用户使用 Google Chrome (2019-02-09 UPDATED) Mozilla Firefox (2019-02-09 UPDATED) 开发者使用 官方支持: pangu.go (Go) p...
安卓隐藏了的视图在工具里显示
早知今日读书是,悔作从前任侠非。——李欣 有时候我们在安卓布局时默认隐藏了某视图元素 12345<FrameLayout android:layout_width="match_parent" android:layout_height="match_parent" android:visibility="gone"></FrameLayout> 但如果我们需要在 Android Studio 中显示,则可以添加tools:visibility="visible"属性,例如: 123456<FrameLayout android:layout_width="match_parent" android:layout_height="match_parent" android:visibility="gone" tools:visibility="vi...
