Allied ArchitectsAllied ArchitectsEngineer Blog

Facebookアプリのメニューらしきものをandroidで実装してみた

2012/06/27 Android

お久しぶりです。高畑です。

前回にandroidのことをちょろっと書きましたが、今回もandroidネタを書きます。

今回はタイトルの通り、iphoneやandroidのFacebookアプリにある左側からにょいーんとなるメニューを実装してみたいと思います。

実装のイメージとしては、メニューとなるレイアウトと、メインとなるレイアウトを重ねあわせて。メインのレイアウトを右ににょいーんとスライドさせることで下に隠れていたメニューを表示するというものです。

実際にFacebookのアプリ側はどうやって実装しているのかはわかりませんが、ここでやる方法でかなり良い感じになります。

今回使用するレイアウトのxmlファイルです

FrameLayoutでメインとメニューのレイアウトを重ねています。

このメニューのレイアウトの上に

メインのレイアウトが重なっています。

ここからActivityのソースです

長くなってしまいましたがこれでメインレイアウトをタッチすると、右ににょいーんとずれて、下に隠れていたメニューのレイアウトが見えます。

もう一度メインレイアウトをタッチすると左ににょいーんして元の状態に戻ります。

アニメーション後、こんな感じの見た目になります。

今回のポイントはアニメーションの動作完了後に

で物理的にレイアウトを移動させています

アニメーションは見た目だけ動いて、レイアウトのタッチ位置の座標までは移動していません。なので、物理的にレイアウトを移動させないと、画面のタッチイベントの取得位置が「アレ?なんでここで反応するの?」って感じになります。

アライドアーキテクツでは、一緒に働く仲間を随時募集しています。是非一度採用サイトをにょいーんと覗いてみてください。

高畑 匡秀
  • 高畑 匡秀
  • Android?エンジニア
  • iOSに浮気を始めたAndroidエンジニア? Androidはほとんど書いてない…

RELATION ENTRY

JetBrains製DBツール「DataGrip」の基本操作

JetBrains製DBツール「Data...

2017/04/13 SQL

ネイティブアプリの開発からすっかり離れてWebエンジニアの世界にどっぷり使っています。 phpの開発にずっとintelliJを使っていたのですが、やっぱりphpやるときはPhpStorm使いたくなったりiOSやるときにAppCodeもあったほうがいいかなとか 色々考えてもうせっかくだからAll Pr...

続きを読む

SharedPreferenceを使って学ぶkotlin

SharedPreferenceを使って...

2015/12/11 kotlin

Kotlin Advent Calendar 2015の11日目の記事です 昨日は red_fat_daruma さんによるJavaからの利用を視野に入れたKotlinコードで何をするべきかでした 久しぶりのブログ更新です。最近Androidをあまり触らずiOSに浮気をしています。 浮気をしてる最中...

続きを読む

高畑 匡秀の記事一覧へ

ページTOPへ