当前位置: 代码迷 >> Android >> =============急 安卓 gallery 滑动图片,图片左右跳动如何解决======
  详细解决方案

=============急 安卓 gallery 滑动图片,图片左右跳动如何解决======

热度:165   发布时间:2016-04-28 07:02:18.0
=============急 安卓 gallery 滑动图片,图片左右跳动怎么解决======
安卓使用gallery显示图片,在滑动图片时,有时(90%)图片会左右跳动,哆嗦。。。不显示下一个图片。这种情况怎么解决?这个已经解决了好几个星期了。。。

xml文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res/com.suma.activity.smartplayer"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/suma_shape_image_bg"
    android:orientation="vertical" >

    <Gallery
        android:id="@+id/home_gallery"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:spacing="0dip" />
   ....
</RelativeLayout>

这个是gallery中的item 对应的getview
public View getView(int position, View convertView, ViewGroup parent) {
        ImageView image = null;
        if (convertView == null) {
            image = new ImageView(mContext);
        } else {
            image = (ImageView) convertView;
        }
//使用ImageLoader加载图片
        imageLoader.displayImage(resourceList.get(position).getPicUrl(), image, options);
        WindowManager wm = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
        int screenWidth = wm.getDefaultDisplay().getWidth();
        image.setLayoutParams(new Gallery.LayoutParams(screenWidth, screenWidth * 211 / 516));
        return image;
    }

------解决方案--------------------
到不了第二张,这不清楚啊,还没遇到过这样的情况,多贴点代码看看,怎么设置的,你要是不太依赖Gallery的话,我建议用viewpage,个人建议。
------解决方案--------------------
左右跳动大概是图片界面自动调整了吧?移动过去了,又调整到正常位置,不显示下一个图片这个明显就是你没加载到下一个图片
------解决方案--------------------
你的position是不是没有改变过?给份东西你参考下吧。感觉你改一下就可以完成上面的问题了
package com.eoemobile.book.ex_widgetdemo;
 
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Gallery;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.ViewSwitcher;
import android.widget.Gallery.LayoutParams;

public class ImageShowActivity  extends Activity implements
AdapterView.OnItemSelectedListener, ViewSwitcher.ViewFactory {
CheckBox plain_cb;
CheckBox serif_cb;
CheckBox italic_cb;
CheckBox bold_cb;

 

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

        setContentView(R.layout.image_show);
        setTitle("ImageShowActivity");

        mSwitcher = (ImageSwitcher) findViewById(R.id.switcher);
        mSwitcher.setFactory(this);
        mSwitcher.setInAnimation(AnimationUtils.loadAnimation(this,
                android.R.anim.fade_in));
        mSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this,