GithubHelp home page GithubHelp logo

treehollow / treehollow-v3-ios Goto Github PK

View Code? Open in Web Editor NEW
24.0 24.0 14.0 6.12 MB

树洞 iOS / macOS 客户端,使用 SwiftUI 开发。

License: GNU Affero General Public License v3.0

Swift 100.00%
ios macos swift swiftui treehollow

treehollow-v3-ios's People

Contributors

cydiater avatar liang2kl avatar pkuhollow avatar thuhole avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

treehollow-v3-ios's Issues

iOS 14 重新适配

目前存在的问题:

  • List 无法刷新、存在 separator
  • TabView 可以任意滑动
  • Text 高亮渲染耗时

重复下载图片

URLSession(configuration: .default).dataTask(with: url, completionHandler: { data, _, error in
if let error = error {
completion(.failure(.failed(description: error.localizedDescription)))
} else if let data = data, let image = UIImage(data: data) {
completion(.success(image))
} else {
completion(.failure(.invalidURL))
}
})
let resource = ImageResource(downloadURL: url, cacheKey: urlString)
DispatchQueue.global(qos: .background).async {
KingfisherManager.shared.retrieveImage(with: resource, options: [.memoryCacheExpiration(.never)]) { result in
switch result {
case .success(let value):
completion(.success(value.image))
case .failure(let error):
completion(.failure(.failed(description: error.errorDescription ?? "")))
}
}
}
}
}

两个BUG

  • 横屏时收藏和发送会魔性重叠
    横屏重叠

  • 发帖之后重复播放动画
    重复播放

树洞跳转优化

目前树洞跳转只能通过新建一个sheet来完成,在点击多个通知时会弹出多个相同树洞的详情界面。

计划改进:通过 UIHostingController 包装(以获得引用),点击新通知时先查询当前页面 postId 是否与通知的相同,若相同则直接刷新当前页面。

在 Widget 上显示 tag

性相关等标签在 App 内会默认隐藏,在 Widget 上是不是也应该显示 tag + 隐藏内容

卡顿问题

有如下几类卡顿问题:

  1. 时间轴页面新卡片从底部出现时略微卡顿
  2. 评论区滑动开始时瞬间卡顿
  3. 评论区滑动整体卡顿

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.