Android Tips Round-Up, Part 1
With my recent project I've been posting one Android class/method a day. People have been asking for an archive of these links, so every couple weeks I'm going to round them up here. I'll also be adding a bit of color commentary, but still the goal is for this not to be a ton of work for me. :)
More: Part 1 | Part 2 | Part 3 | Part 4 | Part 5
Activity.startActivities()
- Nice for launching to the middle of an app flow.
TextUtils.isEmpty()
- Simple utility I use everywhere.
Html.fromHtml()
- Quick method for formatting Html. It's not particularly fast so I wouldn't use it constantly (e.g., don't use it just to bold part of a string - construct the Spannable manually instead), but it's fine for rendering text obtained from the web.
TextView.setError()
- Nice UI when validating user input.
Build.VERSION_CODES
- Not only is it handy for routing code, it's also summarizes behavioral differences between each version of Android.
Log.getStackTraceString()
- Convenience utility for logging.
LayoutInflater.from()
- Wraps the long-winded getSystemService() call in a simple utility.
ViewConfiguration.getScaledTouchSlop()
- Using the values provided in ViewConfiguration ensures all touch interaction feels consistent across the OS.
PhoneNumberUtils.convertKeypadLettersToDigits
- Makes handling phone number data a snap, as some companies provide them as letters.
Context.getCacheDir()
- Use the cache dir for caching data. Simple enough but some don't know it exists.
ArgbEvaluator
- Transition from one color to another. As was pointed out by Chris Banes, this class creates a lot of autoboxing churn so it'd be better to just rip out the logic and run it yourself.
ContextThemeWrapper
- Nice class for changing the theme of a Context on the fly.
Space
- Lightweight View which skips drawing. Great for any situation that might require a placeholder.
ValueAnimator.reverse()
- I love this for canceling animations smoothly.