핵심 데이터 요소와 함께 목록 행 확장 및 축소를 어떻게 사용할 수 있습니까?

바니 헤
struct AppointmentView: View
{
    @Environment(\.managedObjectContext) var managedObjectContext
    @FetchRequest(entity: Appoint.entity(), sortDescriptors: [NSSortDescriptor(keyPath: \Appoint.title , ascending: true)])
    var appointments_title: FetchedResults<Appoint>
    @State var showAddDate = false
    @State var sectionState: [Int: Bool] = [:]
    
    var body: some View
    {
        NavigationView
        {
            List
            {
                    ForEach(appointments_title)
                    {
                        order in
                        HStack
                        {
                            Text("\(order.title)").font(.headline)
                            Spacer()
                            Text("\(order.date, formatter: ContentView.self.taskDateFormat)").font(.headline)
                        }.contentShape(Rectangle())
                            .onTapGesture
                            {
                                self.sectionState[order] = !self.isExpanded(order)
                            }
                        if self.isExpanded(order)
                        {
                            Text("\(order.description)”)
                        }
                    }
             }
         
            .navigationBarTitle("My Appointment")
            .navigationBarItems(trailing: Button(action: {self.showAddDate = true}, label: {Image(systemName: "plus.circle").resizable().frame(width: 32, height: 32, alignment: .center)}))
            .sheet(isPresented: $showAddDate) {AddDate().environment(\.managedObjectContext, self.managedObjectContext)}
        }
    }
    func isExpanded(_ order:Int) -> Bool
    {
        sectionState[order] ?? false
    }
}

이 코드를 실행하려고하면이 오류 메시지가 표시됩니다.
'FetchedResults <Appoint>'유형의 값을 예상
인수 유형 'Range <Int>' 로 변환 할 수 없습니다.

'FetchedResults <Appoint>'를 'Range <Int>'로 변환하는 방법이 있습니까?

바니 헤

나는 무언가를 알아 냈고 작동합니다. 기본적으로 부울 유형의 다른 속성을 추가하고 .xcdatamodeld 파일에서 'isExpanded'라고 부릅니다. 새 항목을 추가 할 때마다 부울 속성을 false로 설정합니다.

struct AppointmentView: View
{
    @Environment(\.managedObjectContext) var managedObjectContext
    @FetchRequest(entity: Appoint.entity(), sortDescriptors: [NSSortDescriptor(keyPath: \Appoint.title , ascending: true)])
    var appointments_title: FetchedResults<Appoint>
    @State var showAddDate = false
    //@State var sectionState: [Int: Bool] = [:]
    
    var body: some View
    {
        NavigationView
        {
            List
            {
                    ForEach(appointments_title)
                    {
                        order in
                        HStack
                        {
                            Text("\(order.title)").font(.headline)
                            Spacer()
                            Text("\(order.date, formatter: ContentView.self.taskDateFormat)").font(.headline)
                        }.contentShape(Rectangle())
                            .onTapGesture
                            {
                                order.isExpanded.toggle()
                            }
                        if order.isExpanded
                            {
                                Text("\(order.description)”)
                            }
                            else
                            {
                                EmptyView()
                            }
                    }
             }
         
            .navigationBarTitle("My Appointment")
            .navigationBarItems(trailing: Button(action: {self.showAddDate = true}, label: {Image(systemName: "plus.circle").resizable().frame(width: 32, height: 32, alignment: .center)}))
            .sheet(isPresented: $showAddDate) {AddDate().environment(\.managedObjectContext, self.managedObjectContext)}
        }
    }
    /*func isExpanded(_ order:Int) -> Bool
    {
        sectionState[order] ?? false
    }*/
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

로컬 저장소, IMAP 및 새 이메일의 즉각적인 푸시와 함께 mutt를 어떻게 사용할 수 있습니까?

분류에서Dev

로컬 저장소, IMAP 및 새 이메일의 즉각적인 푸시와 함께 mutt를 어떻게 사용할 수 있습니까?

분류에서Dev

커패시터와 함께 이온 저장 장치를 어떻게 사용할 수 있습니까?

분류에서Dev

하나의 SQL 문장에서 INNER JOIN 및 date와 함께 count를 어떻게 사용할 수 있습니까?

분류에서Dev

이를 얻기 위해 MongoDB 및 JS와 함께 map-reduce를 어떻게 사용할 수 있습니까?

분류에서Dev

이메일 확인 링크를 위해 Meteor와 함께 launchmyapp을 어떻게 사용할 수 있습니까?

분류에서Dev

플랫리스트 데이터와 함께 useState ()를 어떻게 사용할 수 있습니까?

분류에서Dev

Shadow DOM의 <content> 요소와 함께 : first-child 선택기를 어떻게 사용할 수 있습니까?

분류에서Dev

폴리머 요소와 함께 패 커리를 어떻게 사용할 수 있습니까?

분류에서Dev

이 함수에서 목록 요소를 어떻게 참조 할 수 있습니까?

분류에서Dev

앱 및 확장 프로그램-핵심 데이터 사용 == 오류 : sharedApplication () '을 사용할 수 없습니다.

분류에서Dev

목록 요소를 R에서 요인 이름으로 어떻게 사용할 수 있습니까?

분류에서Dev

XCTest에서 사용할 때 핵심 데이터 저장소가 비어 있습니다.

분류에서Dev

varchar에 요소 목록이 포함 된 모든 레코드를 어떻게 삭제할 수 있습니까?

분류에서Dev

많은 수의 요소, Java와 함께 split ()을 어떻게 사용할 수 있습니까?

분류에서Dev

각도 구성 요소와 함께 ui-router를 사용하도록 안내 할 수있는 블로그 게시물이 있습니까?

분류에서Dev

여러 사용자 클래스 및 다른 데이터베이스 항목과 함께 flask_login을 어떻게 사용할 수 있습니까?

분류에서Dev

add / removeClass 및 <audio>에 대한 IF 인수와 함께 parentNode를 어떻게 사용할 수 있습니까?

분류에서Dev

변수 및 다른 숫자와 함께 "for"를 어떻게 사용할 수 있습니까?

분류에서Dev

c에서 인수와 함께 함수 포인터를 어떻게 사용할 수 있습니까?

분류에서Dev

URL 매개 변수 및 오류 메시지와 함께 인증 미들웨어의 redirectTo 메소드를 어떻게 사용할 수 있습니까?

분류에서Dev

Java에서 Integer 및 Float와 함께 List <object>를 어떻게 사용할 수 있습니까?

분류에서Dev

R의 데이터 프레임 목록에 함수를 어떻게 적용 할 수 있습니까?

분류에서Dev

Cerberus를 사용하여 특정 범위의 부동 소수점을 포함하는 목록을 어떻게 확인할 수 있습니까?

분류에서Dev

일반 레코드 및 테이블 유형과 함께 'InsertQuery'를 어떻게 사용할 수 있습니까?

분류에서Dev

알파를 포함하도록이 UIColor 16 진수 함수를 어떻게 확장 할 수 있습니까?

분류에서Dev

Scala의 해당 목록과 함께 첫 번째 목록의 각 요소를 어떻게 추가 할 수 있습니까?

분류에서Dev

항목을 확대 / 축소 및 스 와이프 할 수 있습니까?

분류에서Dev

Ember Data의 RESTAdapter와 함께 프록시를 어떻게 사용할 수 있습니까?

Related 관련 기사

  1. 1

    로컬 저장소, IMAP 및 새 이메일의 즉각적인 푸시와 함께 mutt를 어떻게 사용할 수 있습니까?

  2. 2

    로컬 저장소, IMAP 및 새 이메일의 즉각적인 푸시와 함께 mutt를 어떻게 사용할 수 있습니까?

  3. 3

    커패시터와 함께 이온 저장 장치를 어떻게 사용할 수 있습니까?

  4. 4

    하나의 SQL 문장에서 INNER JOIN 및 date와 함께 count를 어떻게 사용할 수 있습니까?

  5. 5

    이를 얻기 위해 MongoDB 및 JS와 함께 map-reduce를 어떻게 사용할 수 있습니까?

  6. 6

    이메일 확인 링크를 위해 Meteor와 함께 launchmyapp을 어떻게 사용할 수 있습니까?

  7. 7

    플랫리스트 데이터와 함께 useState ()를 어떻게 사용할 수 있습니까?

  8. 8

    Shadow DOM의 <content> 요소와 함께 : first-child 선택기를 어떻게 사용할 수 있습니까?

  9. 9

    폴리머 요소와 함께 패 커리를 어떻게 사용할 수 있습니까?

  10. 10

    이 함수에서 목록 요소를 어떻게 참조 할 수 있습니까?

  11. 11

    앱 및 확장 프로그램-핵심 데이터 사용 == 오류 : sharedApplication () '을 사용할 수 없습니다.

  12. 12

    목록 요소를 R에서 요인 이름으로 어떻게 사용할 수 있습니까?

  13. 13

    XCTest에서 사용할 때 핵심 데이터 저장소가 비어 있습니다.

  14. 14

    varchar에 요소 목록이 포함 된 모든 레코드를 어떻게 삭제할 수 있습니까?

  15. 15

    많은 수의 요소, Java와 함께 split ()을 어떻게 사용할 수 있습니까?

  16. 16

    각도 구성 요소와 함께 ui-router를 사용하도록 안내 할 수있는 블로그 게시물이 있습니까?

  17. 17

    여러 사용자 클래스 및 다른 데이터베이스 항목과 함께 flask_login을 어떻게 사용할 수 있습니까?

  18. 18

    add / removeClass 및 <audio>에 대한 IF 인수와 함께 parentNode를 어떻게 사용할 수 있습니까?

  19. 19

    변수 및 다른 숫자와 함께 "for"를 어떻게 사용할 수 있습니까?

  20. 20

    c에서 인수와 함께 함수 포인터를 어떻게 사용할 수 있습니까?

  21. 21

    URL 매개 변수 및 오류 메시지와 함께 인증 미들웨어의 redirectTo 메소드를 어떻게 사용할 수 있습니까?

  22. 22

    Java에서 Integer 및 Float와 함께 List <object>를 어떻게 사용할 수 있습니까?

  23. 23

    R의 데이터 프레임 목록에 함수를 어떻게 적용 할 수 있습니까?

  24. 24

    Cerberus를 사용하여 특정 범위의 부동 소수점을 포함하는 목록을 어떻게 확인할 수 있습니까?

  25. 25

    일반 레코드 및 테이블 유형과 함께 'InsertQuery'를 어떻게 사용할 수 있습니까?

  26. 26

    알파를 포함하도록이 UIColor 16 진수 함수를 어떻게 확장 할 수 있습니까?

  27. 27

    Scala의 해당 목록과 함께 첫 번째 목록의 각 요소를 어떻게 추가 할 수 있습니까?

  28. 28

    항목을 확대 / 축소 및 스 와이프 할 수 있습니까?

  29. 29

    Ember Data의 RESTAdapter와 함께 프록시를 어떻게 사용할 수 있습니까?

뜨겁다태그

보관