In PDFKit, while adding a stamp annotation to a rotated pdf page, the annotation also getting rotated.
How we can add stamp annotation displayed upright regardless of the page rotation?
Post
Replies
Boosts
Views
Activity
We are not able to load any .xlsx, .pptx file in WKWebview with M1 Chip Mac app but we can load PDF files.
The app is designed for iPad.
We can able to load the same files in iOS and iPadOS.
We are getting "Frame Load Interrupted" error in Mac app.
I'm doing pagination using UITableViewDataSourcePrefetching.
The values will be taken from the Realm local storage.
I will get an array of objects.
These values will be applied to the existing UITableViewDiffableDataSource datasource.
After applying snapshot the tableview scrolling to the top.
I have verified that all my ChatMessage objects has unique hashValues.
How can I prevent the scrolling?
Link to the video sample [https://streamable.com/72g1j1)
Given my code snippet
private func appendLocal(chats chatMessages: [ChatMessage]) {
var sections: [String] = chatMessages.map({ $0.chatDateTime.toString() })
sections.removeDuplicates()
guard !sections.isEmpty else { return }
var snapshot = dataSource.snapshot()
let chatSections = snapshot.sectionIdentifiers
sections.forEach { section in
let messages = chatMessages.filter({ $0.chatDateTime.toString() == section })
/// Checking the section is already exists in the dataSource
if let index = chatSections.firstIndex(of: section) {
let indexPath = IndexPath(row: 0, section: index)
/// Checking dataSource already have some messages inside the same section
/// If messages available then add the recieved messages to the top of existing messages
/// else only section is available so append all the messages to the section
if let item = dataSource.itemIdentifier(for: indexPath) {
snapshot.insertItems(messages, beforeItem: item)
} else {
snapshot.appendItems(messages, toSection: section)
}
} else if let firstSection = chatSections.first {
/// Newly receieved message's section not available in the dataSource
/// Add the section before existing section
/// Add the messages to the newly created section
snapshot.insertSections([section], beforeSection: firstSection)
snapshot.appendItems(messages, toSection: section)
} else {
/// There is no messages available append the new section and messages
snapshot.appendSections([section])
snapshot.appendItems(messages, toSection: section)
}
}
dataSource.apply(snapshot, animatingDifferences: false)
}