0

と1つのビューを置き換える:ボタンで置き換える(非表示)別と1つのビューをクリックしアンドロイド:私は、一般的に必要なもの、他の

はのは、細部に深く行こう: 私は100枚の画像で構成されていViewPagerを、使用しています。問題なし - 画像

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:padding="1dip" 
    android:background="#ffffff"> 

    <ImageView 
     android:id="@+id/image" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"   
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
    /> 
</RelativeLayout> 

それは作品のレイアウト

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"   
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    > 

    <android.support.v4.view.ViewPager 
     android:id="@+id/pager" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"   
     android:layout_alignParentLeft="true"  
     android:background="#ffffff" > 

    </android.support.v4.view.ViewPager> 

    <ImageButton 
     android:id="@+id/imagePlay" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/imageRight" 
     android:layout_alignTop="@+id/imageList"   
     android:src="@drawable/list" /> 

    </RelativeLayout> 

ViewPager

レイアウト。しかし、私は、ビューページにボタンを追加する必要がありますし、ビューの画像をタップした後、gifに変更する必要があります。これはgifのプレビューのように見え、onclickの再生後に表示されます.GIFが再生を開始します。 GIFを用

カスタムレイアウト:それは

<LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/imageList" 
     android:layout_marginRight="28dp" 
     android:layout_toLeftOf="@+id/imageRight" > 

      <com.basv.gifmoviewview.widget.GifMovieView 
       android:id="@+id/gif1" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       /> 

    </LinearLayout> 

を解決する必要がありますどのように?ボタンをタップして別のアクティビティを開くのはかなりシンプルですが、問題は同じフラグメントでGIFを再生することです。

アイデアはありますか?

答えて

1

私は単に(おそらく、あなたは追加のFrameLayoutViewPagerGifMovieViewの両方をラップする必要がある場合があります)と、単純に通常のsetVisibility()を使用して、必要なときにそれを表示/非表示のどこかで、あなたのルートRelativeLayoutにごcom.basv.gifmoviewview.widget.GifMovieViewを追加すると思います。

EDIT

私はそれは私がすぐにsourcesに見て、何も多くのコードが本当にありません電話のメモリ使用量

ための最善の解決策ではないと仮定します。だから、メモリ使用量を気にしてしまうと、ウィジェットを表示する前に動的に作成することができます(隠してしまうと破壊する)か、GIFをアンロードする方法が見当たらないので、空のGIFを "1x1 px"必要がなければ貴重な記憶を占有しなくなりました。

+0

返信ありがとう、私はそれは携帯電話のメモリ使用量のための最良の解決策ではないと思うが、問題を解決するために良いと思う。 – tadvas

+0

編集済みの回答を見る –

0

ここにアイデアがあります。ビューのページャとgifの両方でレイアウトを作成しますが、gifの可視性は不可視に設定されているため、最初は表示されますが表示されません。しかし、誰かがボタンをクリックすると、表示されているページャを不可視に変更したり、初期の境界線が存在していなくても消えたりするように、コードを表示するように設定して、gifをコードに入れてください。

関連する問題