Monday, January 5, 2015

Xamarin and iOS 8: 64 Bit Support and UI

My training course on Xamarin and iOS8 regarding the new 64 bit support and the new User Interface designer tools has just recently been posted to the Learn Now Online site.  I hope that you find it helpful!

Course description

In this course, we will look at the architecture of iOS, how xamarin is supporting 64 bits and what you need to do to update your applications. Next, we will look at the new features in UIKit. Some of these features include the new Xamarin Designer for iOS, AutoLayout and new features added to notifications, and many other enhancements.

Prerequisites

The course assumes knowledge of C# and .NET at an intermediate level. Some familiarity with OSX is helpful, but not required. A very basic understanding of XML is also required.
Outline:
OS 8 Architecture (19:33)
  • Introduction (00:19)
  • Apple iOS (03:15)
  • Major 64-Bit Changes (01:44)
  • ILP32 & LP64 (01:36)
  • Impact on Apps (02:12)
  • Apple Hardware (02:06)
  • iOS Adoption (01:48)
  • Apple Requirements (01:36)
  • Xamarin.iOS (01:01)
  • Xamarin Unified API (00:27)
  • Defaults (03:09)
  • Summary (00:15)
IOS 8 Architecture Continued (23:02)
  • Introduction (00:12)
  • Splits (02:29)
  • Components (01:56)
  • New Data Types (01:47)
  • Upgrade Apps (01:01)
  • Demo: New Unified API (05:10)
  • Demo: API Migration (05:15)
  • Demo: Troubleshooting (01:30)
  • Other Changes (01:43)
  • Images (01:10)
  • Icons (00:24)
  • Summary (00:19)
UI Kit Intro (14:46)
  • Introduction (00:17)
  • Current Status of iOS (00:57)
  • Current Devices (00:53)
  • Current Supported Screen Sizes (01:12)
  • Problem (01:38)
  • Current Version Distribution (01:44)
  • App Icon Images (01:01)
  • Startup Screen (01:33)
  • Demo: Startup & Images (05:14)
  • Summary (00:14)
Design Surface (22:58)
  • Introduction (00:19)
  • Xib (01:09)
  • Xcode Integration (00:43)
  • Storyboards (01:24)
  • Size Classes (01:23)
  • Constraints (02:11)
  • AutoLayout with the Designer (00:40)
  • Constraint Toolbar (00:58)
  • Creating Constraints (00:58)
  • Little Things with Designer (01:33)
  • Demo: iOS Designer (05:22)
  • Demo: Constraints (06:01)
  • Summary (00:12)
Create UI Programmatically (09:55)
  • Introduction (00:14)
  • Programmatically UI (00:40)
  • Historical Requirements (01:01)
  • Apple Way (00:42)
  • FluentLayout (01:04)
  • Methods (00:52)
  • Demo: Programmatic UI (04:35)
  • Resources (00:27)
  • Summary (00:15)
UI Alert View Controller (18:15)
  • Introduction (00:13)
  • UIKit (00:50)
  • UIAlertView (00:46)
  • UIAlertViewController (00:38)
  • UINavigationController (00:56)
  • UINavigationController in iOS8 (00:58)
  • Demo: UIAlertController (04:52)
  • Demo: UINavigationController (01:41)
  • Notifications (01:16)
  • Notification Additions (00:28)
  • UIMutableUserNotificationAction (00:55)
  • Personal Lesson (00:47)
  • Demo: Notifications (03:35)
  • Summary (00:13)
Popover (15:49)
  • Introduction (00:16)
  • UIPopoverController (01:01)
  • UIPopoverPresentationController (00:23)
  • UISearchController (00:43)
  • UISplitViewController (01:04)
  • Demo: Popover Controller (03:11)
  • Demo: Search Controller (04:05)
  • Demo: Split View Controller (04:43)
  • Summary (00:21)

Monday, October 27, 2014

Xamarin Tools: Components, Components, Components!

The Xamarin tool ecosystem is gaining popularity, as more developers continue to build tools with mobility in mind. Here's how to use them in your projects. 
I couldn't help but think about Steve Ballmer's "Developers, developers, developers! …" chant. While often lampooned, the chant shows how important developers are to growing the Microsoft platform.
End-user developers and companies will often judge a company's acceptance in the marketplace by the number of third-party components and add-ins that are developed around that product. It's a complaint I've heard leveled against Xamarin, that it lacks a robust ecosystem of tools, but that is changing.

Wednesday, October 1, 2014

Xamarin.Forms: What Developers Make of It

Developers tell us why they use it and what benefit they derive from the tooling, and Xamarin developer Craig Dunn goes over the decisionmaking process when choosing between Xamarin.Forms, Xamarin.iOS or Xamarin.Android.
I reached out to several developers who were involved with the Xamarin.Forms (XF) beta to get their thoughts on it and also talked with an evangelist for Xamarin, Craig Dunn to get some deeper insight into the development of the product.
Rui Marinho is a developer based in Portugal. Rui is heavily involved in an open source project called Xamarin.Forms Lab project, which is intended to provide additional functionality that can be plugged into Xamarin.Forms. You can check out his Web site at ruimarinho.net to check it out and find additional third-party/open source projects for Xamarin.Forms. Ryan Groom has been developing software for more than 20 years and has authored several books and been extremely active working with Xamarin tools. Jason Awbrey is a Xamarin MVP with nearly 20 years of experience with software development.

Tuesday, September 30, 2014

Simplifying Cross-Platform Mobile App Development with Xamarin.Forms

Lots of decisions go into creating cross-platform apps. Without Xamarin.Forms, the decision process is almost too unwieldy. Here's how it can simplify your mobile development.
Over the past several years, developers have been excited by the ability of Xamarin to target various mobile platforms and share code across these platforms. Over that time, Xamarin has increased the ability to share code by sharing code in Linked Files, supporting Portable Class Libraries, introducing the Xamarin Component Store, adding support for NuGet directly into Xamarin Studio, and a number of other enhancements to their product lines. One feature that developers have been asking for over the years is the ability to share UI code between various platforms. I know I've asked for this feature for several years. With the late spring 2014 release of Xamarin 3 and Xamarin.Forms, Xamarin has produced a cross-platform UI application-programming interface for developers.

Thursday, July 31, 2014

Cross Platform Mobile With C# WhitePaper presented by Visual Studio Magazine

My white paper on Visual Studio Magazine is now available.  This whitepaper will discuss the details for developing cross platform applications with C#.
 "As a Microsoft-centric developer, you have great tools in the Microsoft .NET Framework and C# Language, but you're faced with a challenge when it comes to building apps for the exploding world of mobile devices: Learning new languages and platforms can be incredibly time-consuming.  Wouldn't it be better to use the skills you already posses?  In this paper, you'll learn how to use the interoperable technologies of Xamarin to do just that.

Wednesday, July 30, 2014

Be More Social: oAuth, Facebook and Xamarin

It isn't breaking news that social networks are a big deal to your users. But what's the best way to add that functionality in the cross-platform development world? One of the best ways is through Xamarin, which provides a set of components that allows developers to concentrate on high-level programming and solving user problems. This article will look at some technologies available in Android -- as well as the iPhone -- to add social features to applications. It serves as a companion to my April article that covered oAuth, Twitter and the Linq to Twitter library.

Monday, June 30, 2014

Standardized Navigation Principles for Android App Development - Visual Studio Magazine Article

Navigation in mobile devices is an important consideration. If a user isn't able to navigate an app, he might quickly abandon it. Learn the navigation principles of Android to keep this from happening to you.
Mobile applications have a number of screens (Activities and Fragments) associated with them. Navigating through these is an important mechanism. There are a number of ways to provide standardized navigation in Android. This article will look at three mechanisms to provide navigation:
  1. Menus: Menus provide a common UI component for an application. The Menu APIs are used to present actions, as well as other options within an application.
  2. Navigation Drawer: The navigation drawer is a panel shown from the side of the display; it provides the user with the application's main navigation.
  3. Action Bar: The action bar provides a familiar navigation mechanism to the user across the top of the screen via an app icon, action items and action overflow.
Many thanks to Tomasz Cielecki