Airship (recently rebranded from Urban Airship) is a service that you can integrate into your mobile app or web application. It allows you to send push notifications to a targeted segment of your users based on a variety of filter mechanisms, including a series of Tags and Tag Groups.
I’m currently working on a project that uses Xamarin.Forms, and the other day I started a story to implement some design on a multi-selection list in our mobile application. The design added checkboxes to each cell in the list, and each checkbox has a subtle inner shadow. This is a common design convention–so common that […]
A little more than a year ago, I started working on my first project with native mobile applications. It has been wonderful learning the intricacies of the iOS and Android platforms, but I’ve noticed how cumbersome it is for a team to maintain two versions of the same application. It takes quite a bit of […]
Material Design was introduced by Google in 2014 as a visual language to create a universal design and style guide for applications. Along with Material Design, new widgets and controls were added to match the new styling. One of these elements is the chip. Chips function like buttons that can either be checked or toggled. […]
When building a Kotlin app, or any app for that matter, it’s pretty inevitable that it will contain push notifications. And with push notifications, it’s likely the app icon will need a badge. This is possible with the standard Android API, but unfortunately, the target SDK needs to be 26 or higher for it to […]
Android’s TimePickerDialog is fairly simple to use and works well if all you need to do is to choose hours and minutes. The problem is that you can’t restrict which times can be selected, set time intervals, allow seconds to be chosen, or style it in a meaningful way. The MaterialDateTimePicker library was made to […]
A “picker” is a small scrollable list of defined values that looks like a combination lock with dials. It’s native to Swift. I think “spinner” would be a better name, because it looks like it spins. (Android has a “spinner,” but it’s really just a drop-down list. Annoying.) In this post, I will be showing […]
When creating any kind of application, it’s important to build it for the users you expect to be supporting. Because of this, it may be necessary to display different strings, images, and other content based on the language or region of your users. While creating the translations of an app can be a lengthy process, […]
When using Xamarin.Forms, the conventional wisdom is that you write unit tests around the ViewModel, but not the View. This approach works well for most cases with MVVM, but if you’re developing custom controls, it’s likely not sufficient. In this post, I’m going to dive into a bit of what it takes to successfully write […]
I have been working on a project for a cross-platform mobile application using Xamarin.Forms, and my team has found it surprisingly difficult to determine the best way to handle orientation changes in the application.