itai alter
itai alter

Reputation: 601

iOS: Pull To Refresh error

I'm trying to implement a "pull to refresh" functionality to my table views.

I found a couple of classes that should do the trick (iStopped's PullToRefreshView & Leah's PullToRefresh)

Both classes throws me an error about undefined symbols for i386...

Undefined symbols for architecture i386:
"_OBJC_CLASS_$_PullToRefreshView", referenced from: objc-class-ref in FeaturedTableView.o ld: symbol(s) not found for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation)

Thing is.. I linked against QuartzCore.framework in the Build Phases.. And in the Build Settings, under "architectures" (and "valid architectures"), I see both "armv6" & "armv7".

I searched around the web for that error regarding PullToRefresh, and all I could find is that the framework is missing... but it isn't (I even removed it and re-added it).

I also came across this tutorial, which says I need to Refactor (edit -> refactor) my project (convert to Objective-C ARC), but I can't do that because when I choose my target, I get LOTS of errors (especially from the Facebook SDK).

Isn't there a simple way to add a pull to refresh functionality? :)

Any help would be much appreciated! Thanks!

Upvotes: 1

Views: 1560

Answers (2)

itai alter
itai alter

Reputation: 601

Ok, I've found the actual issue:

I have several Targets that share the most of the project's code. When I was importing the PullToRefresh class, I de-selected all of the Targets, because I noticed that all the other shared files in the project had all the targets in their properties de-selected...

When I re-imported the class and selected all the Targets, everything works fine... I'm now actually using the EGOTableViewPullRefresh and it's working great.

So I guess de-selecting all targets doesn't mean that it's completely shared across all targets :) I wonder why all my view controllers and all don't have any targets checked and they are available to all targets...

But the issue has been resolved (^_^)

Thank you, @jrtc27 , for making me check the import procedure again.

Upvotes: 2

WrightsCS
WrightsCS

Reputation: 50707

(Without seeing your code) You need to import the PullToRefreshView class.

#import "PullToRefreshView.h"

Or you need to make sure that your table controller (which seems to be FeaturedTableView) is a PullRefreshTableViewController.

Example

@interface FeaturedTableView : PullRefreshTableViewController
{
    /* your objects here */
}
@end

Upvotes: 0

Related Questions