質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Q&A

解決済

2回答

4546閲覧

androidのViewをアニメーションでゆっくりVisibillity=GONEにするには

sheepman

総合スコア13

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

0グッド

0クリップ

投稿2014/12/03 07:02

ListViewを持つアプリで、リスト上のアイテムを削除するときに、
削除したアイテムのあいたスペースを、後続のアイテムが埋めるように
ゆっくりと上がってくるようなアニメーションを実施したいのですが上手くいきません。
(下のアイテムで削除対象をつぶすような動きをしてほしい)

List上のアイテムをクリックしたときのイベントとして以下のようなコードを書きましたが、
アイテム自体がアニメーションして消えはしますが、その下のアイテムは動かずリロードさせたときに埋まるので、
一瞬でスペースを詰めたようになってしまいます。

lang

1 public void onClick(View v) { 2 delete(); //対象のアイテムのデータをDBから削除する処理 3 4 //Y方向に中心に向かって縮小する 5 ScaleAnimation anime = new ScaleAnimation(1.0f, 1.0f, 1.0f, 0.0f, 6 Animation.RELATIVE_TO_SELF, 7 0.5f, 8 Animation.RELATIVE_TO_SELF, 9 0.5f); 10 anime.setDuration(500); 11 anime.setAnimationListener(new AnimationListener() { 12 13 @Override 14 public void onAnimationStart(Animation animation) { 15 } 16 17 @Override 18 public void onAnimationRepeat(Animation animation) { 19 } 20 21 @Override 22 public void onAnimationEnd(Animation animation) { 23 reload(); //ListViewをリロードさせるメソッドを実行 24 } 25 }); 26 v.startAnimation(anime); 27 }

イメージとしては、削除したいViewのvisibillityをゆっくりとGONEにしていくような動きが理想です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

自己解決しました。
以下サイトを参考に実装したところ、望む形にはなりました。
http://d.hatena.ne.jp/paraches/20130107
サイトの管理人様にはこの場を借りて感謝いたします。

若干、削除したViewの再利用のあたりに力技とも思える部分がありますが
そこは今後の学習課題とします。
ベストプラクティスがあれば共有いただければ幸いです。

投稿2015/03/24 08:26

sheepman

総合スコア13

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ViewFlipperを利用してfade_in、fade_out等を利用するのはだめでしょうか?

*上記は勘違いして回答してしまいました。汚し失礼しました。

参考になりそうなページをみつけたので貼っておきます。
AndroidのListViewでアニメーションしながらセルを消す

投稿2014/12/03 07:34

omochi

総合スコア410

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sheepman

2014/12/03 09:28

ViewFlipperの知識が無いので間違っているかも知れませんが・・・ 現在のViewと、空のTextViewを要素にしてViewFlipperをListViewのItemにして、 showNext()で消えるようにしてみましたが、やはり次のItemがせり上がるようにできませんでした・・・ ”ListのItemになっているView”のサイズを変えるのでなく、 ”ListのItemの枠(DividerとDividerの間)”を狭めていく という風にしなければいけないのか・・・? 少し混乱してます。
omochi

2014/12/04 04:53

ごめんなさい。勘違いしていました。 無駄な手間をかけさせてしまってすみません。
sheepman

2014/12/04 09:02

いえ、とても勉強になりました! 次に使えそうです! 引き続き模索してみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問