所以我在我的應用程序中使用GIF。但是當我在其他設備上安裝應用程序時,GIF不適合屏幕,或者它不在應該放置的位置。任何人都有解決方案嗎?問題與GIF圖像
Q
問題與GIF圖像
-1
A
回答
0
類:
package com.example.cyril.tryapp;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Movie;
import android.util.AttributeSet;
import android.view.View;
import java.io.InputStream;
public class GifView extends View {
private InputStream gifInputStream;
private Movie gifMovie;
private int movieWidth = 150, movieHeight = 500;
private long movieDuration;
private long mMovieStart;
public GifView(Context context) {
super(context);
init(context);
}
public GifView(Context context, AttributeSet attrs) {
super(context, attrs);
init(context);
}
public GifView(Context context, AttributeSet attrs,
int defStyleAttr) {
super(context, attrs, defStyleAttr);
init(context);
}
private void init(Context context){
setFocusable(true);
gifInputStream = context.getResources()
.openRawResource(R.drawable.maestragif);
gifMovie = Movie.decodeStream(gifInputStream);
movieWidth = gifMovie.width();
movieHeight = gifMovie.height();
movieDuration = gifMovie.duration();
}
@Override
protected void onMeasure(int widthMeasureSpec,
int heightMeasureSpec) {
setMeasuredDimension(movieWidth, movieHeight);
}
public int getMovieWidth(){
return movieWidth;
}
public int getMovieHeight(){
return movieHeight;
}
public long getMovieDuration(){
return movieDuration;
}
@Override
protected void onDraw(Canvas canvas) {
long now = android.os.SystemClock.uptimeMillis();
if (mMovieStart == 0) { // first time
mMovieStart = now;
}
if (gifMovie != null) {
int dur = gifMovie.duration();
if (dur == 0) {
dur = 1000;
}
int relTime = (int)((now - mMovieStart) % dur);
gifMovie.setTime(relTime);
gifMovie.draw(canvas, 0, 0);
invalidate();
}
}
}
XML:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_mainplain"
android:layout_gravity="center">
<com.example.cyril.tryapp.GifView
android:id="@+id/gifview"
android:layout_width="130dp"
android:layout_height="230dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginBottom="30dp" />
<com.example.cyril.tryapp.GifView2
android:id="@+id/gifview2"
android:layout_width="350dp"
android:layout_height="70dp"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
</RelativeLayout>
0
相關問題
- 1. MBProgreeHud與gif圖像
- 2. Netbeans中的J2ME(gif圖像問題)
- 3. 圓角問題與反應本機Android中的GIF圖像
- 4. 爲GIF圖像
- 5. 與圖像jHipster問題
- 6. 問題與灰度圖像
- 7. 問題與加載圖像
- 8. mysql_escape_string問題與圖像url
- 9. 問題與檢索圖像
- 10. 網格問題與圖像
- 11. 問題與顯示圖像
- 12. UIImageView與大圖像。問題
- 13. HTML問題與圖像
- 14. 圖像庫和gif圖像
- 15. IE GIF/PNG透明度問題與jQuery
- 16. 解碼GIF問題
- 17. Php圖像類型上傳問題gif png
- 18. 當UIWebView顯示gif圖像時出現問題
- 19. GIF圖像加載緩慢和/或其他問題
- 20. 使用UIWebView使用tiff和gif格式圖像的問題
- 21. Trigger.IO標題與圖像問題
- 22. 顯示GIF圖像
- 23. 顯示GIF圖像
- 24. 使用Gif圖像
- 25. cfform中gif圖片的問題
- 26. 比較GIF圖像像素
- 27. 問題與圖像視圖和onClickListener
- 28. 將.png圖像轉換爲.gif圖像
- 29. XNA GIF動畫庫問題
- 30. Android解碼gif問題
請發表您的代碼 –
XML或Class? – Cyril
他們倆。元素的位置可以直接在xml中設置,但也可以編程 –