CustomFanController – Solution Code

Creates a circular fan control dial that offers multiple selections marked by
numeric indicators: 0 for off, 1 for low, 2 for medium, and 3 for high.


The app creates a circular UI element that resembles a physical fan control.
It uses a custom view that extends View to draw a circular fan control dial
with an indicator and text labels for the settings: 0 (off), 1 (low),
2 (medium), and 3 (high). When the user clicks the dial, it moves the
dial indicator to the next selection, and changes the dial’s color from
gray to green for selections 1-3 (indicating that the fan power is on).


You need to know how to:

  • Open, build, and run apps with Android Studio.
  • Use the layout editor to create a user interface.
  • Edit a layout in XML.
  • Use touch, text, and click listeners in your code.

Getting Started

  1. Download the code.
  2. Open the code in Android Studio.
  3. Run the app.


Copyright 2019 Google, Inc.

Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements. See the NOTICE file distributed with this work for
additional information regarding copyright ownership. The ASF licenses this
file to you under the Apache License, Version 2.0 (the “License”); you may not
use this file except in compliance with the License. You may obtain a copy of
the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an “AS IS” BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations under
the License.


View Github