Post Image

Codefreeze for 3.8

Codename One 3.8 should land one week from now and from later today we are effectively in code freeze. Please update to the release candidate of 3.8 tomorrow morning to help us track some last minute bugs and regressions. As is usually our process we will release updates as necessary with code reviews and next week we won't have the usual set of releases as we'll take some time off.

Read More
Post Image

Tutorial - Working with Images and Densities

We had a lot of posts covering images, multi-image and density. It's one of the more challenging concepts to explain to developers coming from a desktop development background. Density is a simple concept to explain but the implications of it are sometimes counter-intuitive e.g. which device has higher density: Your phone or your 4k TV?

Read More
Post Image

Pixel Perfect - Text Input (Part 2)

Last week we discussed the first part of working with text components and left some big tasks for this week. This week we'll try to address the remaining issues with text input and make it easier to construct UI's. This is crucial as we'll be going into code freeze soon and we need enough time to iron out the issues in the text input.

Read More
Post Image

New Milestones and Features

We will enter code freeze for Codename One 3.8 next week and have a lot of things to clear off the table in order to get there!
The first order of business is that there will be no Codename One 3.9... Instead we will go right to 4.0 and switch to major version number update scheme only.

Read More
Post Image

Tutorial - Creating Lists

Some of our how do I videos are so old it's embarrassing... This is especially true for some core concepts videos as they were some of the first ones we made. The worst part is that these are probably the most important videos we have as they are viewed by developers completely new to Codename One. We had two videos covering creations of lists and both of them used com.codename1.ui.List with the old GUI builder!

Read More
Post Image

Pixel Perfect - Text Input

I started working on this post back in August and so much happened in between I just had to scrap the whole thing and start over again... I've discussed buttons before and now it's time for TextField & TextArea. But before we go into that lets take a moment to talk about the problems that arose from the last installment of pixel perfect.

Read More
Post Image

TIP: Map Layout Manager

I've recently added a segment to the online course covering the native maps. This segment is a part of a larger trend towards the upcoming Uber demo which we will release before the end of the year. As part of that work I did some initial "half baked" work on a map layout manager.

Read More
Post Image

Tutorial - Background, Images, Borders and Gradients

Backgrounds include a lot of nuance, especially the part covering the priorities which I start with in the tutorial below. Because of that this is one of the longer how do I videos I've done in a while as there is just so much to cover. I still had to cut a lot of stuff away and focus almost entirely on the designer tool.

Read More
Post Image

Don't Touch That Code

Last week scrolling broke and we had a few relatively complex regressions. This can be traced back to a change we did to the getComponentAt(x, y) method, this change in itself fixed a problematic bug but triggered far worse bugs and we just had to revert the whole thing...

Read More
Post Image

TIP: Use Weak References

One of the less familiar features of Java is the mess of weak/soft/phantom references. This is a confusing mess and it's compounded by the fact that other languages (such as the reference counting Swift/Objective-C) have used these terms with a different meaning. To simplify this weak references in a garbage collected language allows you to keep a pointer (reference) to an object that won't force it to stay in RAM.

Read More