Tinder のような 横スワイプできるカードなUIライブラリ「AndTinder」

こんな人気記事あります.

2日で約3000語を暗記、スマフォ世代の英単語学習アプリ「mikan」はTinderライク - TechCrunch

mikanでは左右にスワイプすることで次々とカードをめくっていくようなUIを採用している。これは、去年あたりからアメリカの若者の間で流行している出会いアプリの「Tinder」が生み出し、多くのアプリが採用しているスマフォ・ネイティブといっていいUIだ。

「素早く振り分けができる」てことなのだろうが, Yes/No ボタンでも同じじゃね?

などと思いつつ, ライブラリを探す.

Swipeable-Cards/AndTinder at master · kikoso/Swipeable-Cards

20140730-133942

20140730-133956

20140730-134023

20140730-134040

使い方は簡単で,

レイアウト内に View コンテナとして埋め込んで,

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:app="http://schemas.android.com/apk/res-auto"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:orientation="vertical">

    <com.andtinder.view.CardContainer
        android:id="@+id/layoutview"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"/>
</LinearLayout>

利用 Activity でカード内のテキストと画像を指定.
スワイプ処理の Listener もここで.

public class MainActivity extends Activity {

  private CardContainer mCardContainer;

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.mainlayout);

    mCardContainer = (CardContainer) findViewById(R.id.layoutview);

    Resources r = getResources();

    SimpleCardStackAdapter adapter = new SimpleCardStackAdapter(this);

    adapter.add(new CardModel("Title1", "Description goes here", r.getDrawable(R.drawable.picture1)));
    adapter.add(new CardModel("Title2", "Description goes here", r.getDrawable(R.drawable.picture2)));
    ...

    cardModel.setOnClickListener(new CardModel.OnClickListener() {
      @Override
      public void OnClickListener() {
        Log.i("Swipeable Cards","I am pressing the card");
      }
    });

    cardModel.setOnCardDimissedListener(new CardModel.OnCardDimissedListener() {
       @Override
       public void onLike() {
         Log.i("Swipeable Cards","I like the card");
       }

       @Override
       public void onDislike() {
         Log.i("Swipeable Cards","I dislike the card");
       }
    });

    adapter.add(cardModel);
    mCardContainer.setAdapter(adapter);
  }
}

このUI, 実際使ってみると, 気持ちよすぎてクセになるんだわー

Tinder


アプリをつくるときに どの Activity UI をメインとするか

「ハンバーガーボタン」もしくは「ナビゲーションドロワー」と呼ばれるナビゲーションUIは数多くのアプリに見られる。Googleもアプリデベロッパー向けにオススメのデザインパターンとして推奨している。

これからは, Navigation Drawer の一択, と思っていたら以下の話.

平均ウィークリーアクセス頻度が下がっている。平均デイリーアクセス頻度も下がっている。結論、「ハンバーガーボタン」ナビゲーションはユーザーにとって受け入れられていない、ということが改めて明らかになった。

使用頻度が低く興味がない人にとっては左上をタップするということは大きな障壁となり、ユーザー離脱へと繋がる可能性が高まってしまう。

アプリUI/UXデザイナー必見!「ハンバーガーボタン」ナビゲーションを使うとユーザーエンゲージメントが半減することが発覚 | gori.me(ゴリミー)

Google まで A/B テスト中 などという話だったりで.

となれば, スワイプ可能タブなスタイルなのか.

Create_New_Project 2

けど,

画面の遷移や表示に, アニメーション付きスワイプ が

そんなにいいとは思わなくね?

端末自体の遷移や起動時のアニメはすべてOFF気味にしていますが.

20140725-130135

ボタンをタップしたらさっさと素早く画面が変わった方が

イライラ少なくね?

誤操作も減るし.

たとえば, LINE とかのように.

LINE

けどこれはこれで, アプリの根本の「設定」画面が見つけづらかったりするような気もしなくもない.

画面たちの構成つか, 意味合いのカテゴリ分けつか

そこを捉えたかったのだろうか Google の Drawer や アクションバーからの Spinner.

Create_New_Project 3

Create_New_Project

てなかんじで,

メインの Acticity つか アプリのルートな画面 というか

どれにすべきか悩んだりしませんか?

Blank Activity から始めると面倒臭すぎるようにも思うし.

Create_New_Project


GIFアニメで見る 新Android「L」の「Material design」

オフィシャルなサイト内には見やすく動画とかあるけども.

生で提供公開されてるリソースをGIFアニメで.

あまり見やすくないのかも(笑)

Layout Template

Mobile
The mobile layout template includes a variety of 10 screens. Use the layers palette to toggle on and off keylines and spacing rules.

Layout_Mobile_Whiteframe

Layout Mobile Whiteframe 2 MB (.ai)

Tablet
The tablet layout template includes a variety of 14 screens. Use the layers palette to toggle on and off keylines and spacing rules.

Layout_Tablet_Whiteframe

Layout Tablet Whiteframe 3 MB (.ai)

Desktop
The desktop layout template includes a variety of 4 screens, each with 4 different window sizes. Use the layers palette to toggle on and off keylines and spacing rules.

Layout_Desktop_Whiteframe

Layout Desktop Whiteframe 96 MB (.ai)

Whiteframes
Whiteframes provide a variety of layout structures using a consistent approach to surfaces, layering, and shadows.

Whiteframes

Whiteframes 15 MB (.ai)

続きを読む >>