If you like my tutorials, you will love my book . It is chockful of advanced programming techniques and the only comprehensive barcode reference for serious iOS developers.
Our DNA is written in Objective-C

Time-Limited Demo of Our Components

I’m happy to announce today that we will begin to make available test versions of our components so that you can try them out in your apps. This is possible with the help of our Jenkins build server which installs a “time bomb” on every nightly build of the components. This limits the utility of the static universal frameworks to 30 days of testing. Of course you can download a new copy as often as you like to further extend the testing time. But you cannot publish any production apps with that.

Our best-selling component is DTRichTextEditor and also by far the most complex because of the multiple sub-projects. Here’s a guide how to get set up for evaluating the component.

There is a DTRichTextEditorDemo host project available on GitHub. Except for the framework – which we still need to download – this is a fully functioning app.

Download a fresh copy of and unzip it.

This is an embedded framework because of the DTLoupe.bundle which contains the resources for the magifying glass. The framework itself is also contained in there. The reason for this is that you simply drag the embeddedframework folder into Xcode and it does the right things with what it finds. The resources will be copied to the app bundle, the static universal library will be linked into your app binary.

So you drag the folder into your project.

You want to copy all files into your project folder as well as assign them to the target.

This action achieves several things at the same time:

  • Copies the library and bundle into the project tree
  • Adds the bundle to the “Copy Bundle Resources” build phase
  • Adds the library to the “Link Binary with Libraries” build phase
  • Adds “$(SRCROOT)/DTRichTextEditor.embeddedframework” to the “Framework Search Paths” build setting

We do not need to set up any additional header search paths because all headers required can be found inside the framework’s headers folder.

Finally, I recommend adding the import for the global DTRichTextEditor.h to the PCH file like so:

#ifdef __OBJC__

That’s all it takes. (I hope) The Demo is set up to add some rich Hello World text.

Due to the amount of buttons added to the toolbar I made it iPad-only for now so that I didn’t have to invent a user interface suitable for iPhones, too. B, I, U, H are Bold, Italic, Underlined and Highlighted. L,C, R, J are Left-, Center-, Right-aligned and Justified paragraph styles. The 1. and + are an incomplete implementation of list-support. The photo inserts a picture from the photo album. The smiley button inserts an inline smiley graphic. And the URL button shows how to turn some text into a hyperlink.

I am happy to accept your pull requests for nicer UI in exchange for discounts on the component. I’m especially looking for a font picker and style popup like Apple has it in Pages for iOS. :-)


With this guide and by looking at the demo project you should be able to evaluate the component in the context of your own apps. Then when you’re ready to purchase a full license you simply remove the framework and replace it with the original source code as a sub-project. Now that I have figured out the process end-to-end I will make more and more components available this way.

Let me know if you have any preference which components I should make available as time-limited demo next. Otherwise I’ll approach them by number of recent sales.

Categories: Parts

%d bloggers like this: