Code Monkey home page Code Monkey logo

androidutil's Introduction

AndroidUtil - README

API-Level License Donate

"AndroidUtil" is an Android-library, which provides various utility classes for use in Android app development. The library currently provides the following features:

  • The class Condition provides methods, which allow to ensure that variables or objects fulfill certain conditions by throwing exceptions, if conditions are violated, e.g. when an object is null.
  • The class BitmapUtil provides methods, which allow to create and edit bitmaps, e.g. clipping them.
  • The class ClassUtil provides methods, which allow to handle class names.
  • The class DisplayUtil provides methods, which are related to a device's display metrics, e.g. converting DP values to pixel values and vice versa.
  • The class ElevationUtil provides methods, which can be used to emulate elevations of views on pre-Lollipop devices. The view ElevationShadowView can be used to easily visualize such an elevation within a layout.
  • The class AppUtil provides methods, which allow to start system apps.
  • The class PermissionUtil provides methods, which allow to handle runtime permissions.
  • The class ViewUtil provides methods, which allow to handle views.
  • The class FileUtil provides methods, which allow to handle files.
  • The class StreamUtil provides methods, which allow to handle streams.
  • The class ThreadUtil provides methods, which allow to handle threads.
  • The class ArrayUtil provides methods, which allow to handle arrays.
  • The class Triple is a generic data structure, which eases to pass around a triple of three objects.
  • The view UnfocusableToolbar extends the AppCompat support library's Toolbar to enable touch events to be passed to other views in the event processing chain.
  • The view SquareImageView implements an ImageView whose height is enforced to be equal to its width.
  • The view ScrimInsetsLayout implements a layout, which allows to show a Drawable in the insets, which are passed to its fitSystemWindows-method. This can for example be used to implement a navigation drawer, which appears to be located behind the device's status bar.
  • The view HeaderAndFooterGridView extends the Android SDK's GridView with the functionality to add header and footer views.
  • The view ExpandableGridView extends the HeaderAndFooterGridView with the ability to show multiple groups, which can be expanded to show their children.
  • The view HeaderAndFooterRecyclerView extends the RecyclerView Support library's RecyclerView with the functionality to add header and footer views.
  • The class AbstractSavedState can be used as a base class for storing the state of views. It is identical to the Android SDK's class android.view.AbsSavedState, but uses a custom class loader and is therefore suited for being used in library projects.
  • The class Logger allows to write log messages to Logcat. By applying a log level, log messages can be filtered depending on their priority.
  • The class ViewHolder and AbstractViewHolderAdapter allow to use the view holder pattern in custom adapter implementations.
  • The class DragHelper allows to measure the distance and speed of drag gestures.
  • The classes ViewRecycler and AttachedViewRecycler allow to cache views in order to reuse them instead of inflating new instances.
  • The class AbstractDataBinder allows to asynchronously load data in order to display it by using recyclable views.

License Agreement

This project is distributed under the Apache License version 2.0. For further information about this license agreement's content please refer to its full version, which is available at http://www.apache.org/licenses/LICENSE-2.0.txt.

Prior to version 1.4.3 this library was distributed under the GNU Lesser General Public License version 3.0 (GLPLv3).

Download

The latest release of this library can be downloaded as a zip archive from the download section of the project's Github page, which is available here. Furthermore, the library's source code is available as a Git repository, which can be cloned using the URL https://github.com/michael-rapp/AndroidUtil.git.

Alternatively, the library can be added to your Android app as a Gradle dependency by adding the following to the module's build.gradle file:

dependencies {
    compile 'com.github.michael-rapp:android-util:1.18.1'
}

Contact information

For personal feedback or questions feel free to contact me via the mail address, which is mentioned on my Github profile. If you have found any bugs or want to post a feature request, please use the bugtracker to report them.

androidutil's People

Contributors

michael-rapp avatar rapp-fzi avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.