Memory management in mobile apps

Throughout it’s lifetime, an application is allowed to make use of the internal memory, as object instances obtain parts of it for temporary use and then return it. When an objects doesn’t use the memory anymore but refuses to let it go, a memory leak is created.

Common causes of memory leaks

Soon a leak can turn into a flood, as the memory occupation is small, but constant and the gradual loss of memory will make the application unresponsive.

There are a few common causes for which memory leaks happen. Continue reading

Advertisements

Working with WebViews in Xamarin.Android

Showing a webpage inside a Xamarin.Android app can be done using a WebView. Here are some tips.

Using Directives

Pop science says that more choices don’t bring more happiness. Well, yeah. Turns out you have two options for creating an URL. This was half of my problem.

Screenshot 2014-01-23 00.02.11

Continue reading

An easier way of writing conditional code

I love attending code retreats. It’s an extremely efficient way to learn new things, though the people you pair with and the exercises you practice. And since keeping up with the newest thing is essential to a programmer, what better way to expand your knowledge is there than to let your creativity loose writing code in a different manner than the one you do every day?

What is a code kata?

A code kata is an exercise in programming which helps hone your skills through practice and repetition. Usually at code retreats, you pair with a different partner for each kata and you try to solve them by applying different pair programming techniques. Definitely my favorite kata so far is “Use no conditional blocks in your code”.

Continue reading

Zen Monday: Delegates

Delegates

TeaTimer for Mac

This article will cover how to build a Mac application with Mono.Mac, making use of XCode interface builder and NSComboBoxDataSource. TeaTimer will let us chose a tea variety and it will the time how long it will take to make it.

Open Xamarin studio and start a new project. Select a Mono.Mac application.

Screenshot 2013-10-26 17.00.57

Open the MainWindow.xib, which will be our main application window. This will start up XCode interface builder. From the Object library, drag and drop onto the existing window:

  • a combo box, which will display our tea menu,
  • a button, to start the timer,
  • two labels: one for displaying the current time and one for additional information

Continue reading

Kaleidoscope Image Gallery

This recipe is written for the Xamarin iOS 7 Cook-off. The source code can be found here.

iOS 7 introduces a lot of new features. We will explore the gravity and collision behaviors the OS provides natively with its newest version, building a kaleidoscope image gallery.

Start by creating a new Xamarin.iOS project. Go to File > New > Solution. Select C# > iOS from the sidebar and then Single View Application. Name your application and Xamarin Studio will create for us a ViewController.

Screen Shot 2013-09-26 at 11.10.48 PM

Continue reading