HomeiOS Developmentios - Find out how to utterly take away the horizontal “ghost...

ios – Find out how to utterly take away the horizontal “ghost traces” inside Listing with Part and customized rows?


I’m engaged on a display that makes use of a single SwiftUI Listing composed of:

  1. a prime block (statistics, month picker, 12 months selector, complete, Entrata/Uscita picker).
  2. an inventory of transactions grouped by day, every group inside its personal Part.
  3. every row is a totally customized card with rounded corners (RoundedCornerShape)

screenshot

I’m appropriately eradicating all separators utilizing:

.listRowSeparator(.hidden)
.listSectionSeparator(.hidden)
.scrollContentBackground(.hidden)
.listStyle(.plain)

Every row is rendered like this:

TransazioneSwipeRowView(...)
.listRowInsets(EdgeInsets(prime: 0, main: 16, backside: 0, trailing: 16))
.listRowBackground(Shade.clear)

Nevertheless, I nonetheless see skinny horizontal traces showing between:

  • the search bar and the highest block
  • the highest block and the beginning of the record
  • between rows contained in the grouped part
  • generally on the backside of a Part

These traces are NOT:

  • Divider()
  • system separators
  • backgrounds
  • row borders

They appear to be “ghost traces” routinely generated by SwiftUI’s Listing when a number of consecutive rows or sections are current.

Objectives

I wish to take away these horizontal “ghost traces” utterly whereas preserving:

  • native SwiftUI Listing
  • native scroll habits
  • swipe-to-delete assist
  • grouping by Part
  • customized card-like rows with rounded corners

What I already tried

  • .plain, .grouped, .insetGrouped record types
  • .listRowSeparator(.hidden) and .listSectionSeparator(.hidden)
  • .scrollContentBackground(.hidden)
  • clearing all record and row backgrounds
  • adjusting/eradicating all padding and insets
  • Spacer(minLength: 0) exams
  • rebuilding the structure utilizing ScrollView + LazyVStack
    (this works completely — no traces — however loses native swipe-to-delete)

There are not any Divider() calls, and no background colours that would generate borders.
The traces appear to be drawn by SwiftUI internally.

Query

Is that this a built-in habits of SwiftUI’s Listing in .plain model when utilizing a number of customized rows?
Or is there an formally supported option to eradicate these traces totally?

Extra particularly, is there a advisable mixture of modifiers to attain:

  • a Listing with grouped Sections
  • absolutely customized rows with rounded corners
  • no horizontal separators in any respect, even within the empty gaps between
    sections?

Any steerage, documented workarounds, WWDC references, or official suggestions can be drastically appreciated.

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

- Advertisment -
Google search engine

Most Popular

Recent Comments