菜鸟教程小白 发表于 2022-12-13 05:44:13

ios - 使用 MBCalendarKit 创建事件的问题


                                            <p><p>我在我的应用程序中使用 MBCalendarKit,我可以创建这样的事件:</p>

<pre><code>CKCalendarEvent* aCKCalendarEvent = [ init];
    ;
    aCKCalendarEvent.date = ;
    aCKCalendarEvent.title = @&#34;Joint Meetings&#34;;
    aCKCalendarEvent.info = ;
    ;
    ];
</code></pre>

<p>我可以像这样在同一天创建另一个事件:</p>

<pre><code>;
    aCKCalendarEvent = [ init];
    aCKCalendarEvent.date = ;
    aCKCalendarEvent.title = @&#34;113th Congress Convenes&#34;;
    ;
    ];
</code></pre>

<p>然后我可以像这样在不同的日子创建另一个事件:</p>

<pre><code>eventsArray = [ init];
    ;
    aCKCalendarEvent = [ init];
    aCKCalendarEvent.date = ;
    aCKCalendarEvent.title = @&#34;American Forage &amp; Grassland Council Annual Conference&#34;;
    ;
    ];
</code></pre>

<p>我正在尝试遍历包含所有事件的 plist 文件以创建所有事件。我可以这样做:</p>

<pre><code>NSString *path = [ pathForResource:@&#34;Events&#34; ofType:@&#34;plist&#34;];
    NSDictionary *dictPri = [initWithContentsOfFile:path];
    NSMutableArray *arrEvents = [ initWithArray:];

    // Loop through each item in List array of Events.plist

    for (NSDictionary *dict in arrEvents)
    {
      NSString *titleString = nil;
      NSString *date = nil;
      titleString = ];
      date = ];
      // NSDate *dateVariable = ;

      // Create events

      eventsArray = [ init];
      aCKCalendarEvent = [ init];
      aCKCalendarEvent.title = titleString;
      aCKCalendarEvent.date = ;
      ;
      ;
    }
</code></pre>

<p>问题是,如果我在同一天有多个事件,则只会显示最新的事件。我可以取出 <code>eventsArray = [ init];</code> 行,但是新事件不仅会在正确的日子与其他事件一起出现,而且还会在其他日子出现。所以我想我可以输入这样的东西来检查我是否需要该行,然后将事件添加到 eventsDict 但我得到 <code>-: unrecognized selector sent to instance 0xc6bb880</code> on <code>if ([isEqualToDate:aCKCalendarEvent.date])</code>:</p>

<pre><code>BOOL dateExists;

      for (int i = 0; i &lt; ; i++)
      {
            if ([isEqualToDate:aCKCalendarEvent.date])
            {
                // Array already contains object with this date

                dateExists = YES;
            }
            else
            {
                dateExists = NO;
            }

            NSLog(@&#34;%c&#34;, dateExists);
      }

      if (dateExists == YES)
      {
            ;
            ;
      }
      else
      {
            eventsArray = [init];
            ;
            ;
      }
</code></pre>

<p>所以基本上,我需要一种方法来遍历 plist 并确定程序是否需要在每个新事件上初始化 eventsArray。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您正在将事件与日期进行比较。请参阅下面比较事件日期的代码。</p>

<pre><code>if ([[(CKCalendarEvent *) date]isEqualToDate:aCKCalendarEvent.date])
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 使用 MBCalendarKit 创建事件的问题,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/20634933/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/20634933/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 使用 MBCalendarKit 创建事件的问题