Skip to content

8tory/cardslib

 
 

Repository files navigation

Card Library

Card Library provides an easy way to display a UI Card in your Android app.

You can display single cards, list of cards and a grid of Cards.

Screen

Screen


Examples

Try out:

Screen

  • Get sample application on Google Play Get it on Google Play.
    The demo is a showcase of the functionality of the library.

  • Get the apk with the extras examples
    The demo-extras contains some examples of integration with other libraries.

  • Browse the source code of the sample application for a complete example of use.

  • Example: How to realize simple and nice cards.

Feature

Card Library provides 3 custom tags:

  • CardView to display a UI Card.
  • CardListView to display a List Card.
  • CardGridView to display a Grid Card.

It requires API 14+


CardView displays a UI Card.

  • It provides different parts as a Header, a Thumbnail, a Shadow, a MainContentArea where you can inflate your custom layout
  • You can customize the global layout as you like
  • You can have some built-in features as OnClickListener, OnSwipeListener , OnLongClickListener
  • CardHeader provides an overflow button with a PopupMenuListener, a button to expand/collapse an area, or a customizable button with its listener.
  • CardThumbnail loads a Bitmap with a resource ID or with a URL using LRUCache and an AsyncTask

CardListView displays a List Card.

  • It uses CardView tag and all its properties.
  • It works with an CardArrayAdapter

CardGridView displays a Grid Card.

  • It uses CardView tag and some its properties.
  • It works with an `CardGridArrayAdapter

Usage

Creating a Card is is pretty simple.

First, you need an XML layout that will display the Card.

        <it.gmariotti.cardslib.library.view.CardView
            android:id="@+id/carddemo"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="12dp"
            android:layout_marginRight="12dp"
            android:layout_marginTop="12dp"/>

Then create a model:

      //Create a Card
      Card card = new Card(getContext());

      //Create a CardHeader
      CardHeader header = new CardHeader(getContext());
      ....
      //Add Header to card
      card.addCardHeader(header);

Last get a reference to the CardView from your code, and set your Card.

       //Set card in the cardView
       CardView cardView = (CardView) getActivity().findViewById(R.id.carddemo);

       cardView.setCard(card);

Customization

Here you can find some pages to customize these tags.


Including in your project

Card Library is pushed to Maven Central as a AAR, so you just need to add the following dependency to your build.gradle.

dependencies {
    compile 'com.github.gabrielemariotti.cards:library:0.7.0'
}

See this page for more info.

ChangeLog

Acknowledgements

Credits

Author: Gabriele Mariotti ([email protected])

Follow me on Google+ Follow me on Twitter Follow me on LinkedIn

License

Copyright 2013 Gabriele Mariotti

Licensed 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

   http://www.apache.org/licenses/LICENSE-2.0

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.

Google and the Google Maps logo are registered trademarks of Google Inc., used with permission.

About

Android Library to build a UI Card

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 98.9%
  • Groovy 1.1%