2011-03-01 23 views
1

enter image description here如何刷卡图像+文字的Android

专家你好,可以请你建议我我如何开始工作,只得到该图像+文字swipping效果。实际上,我们有一个RSS链接,从这个链接我们需要获取并显示图片和描述,如上所示。我已经完成了关于左/右箭头的RSS数据获取和图像显示,但是我无法在图像上添加滑动效果。在许多例子中,使用onTouchEvent()方法,但它适用于整个布局,我不想要这种效果。

感谢
VENU

回答

0

做这将是一个Gallery取代您的ImageView最简单的方法。这是一个简单的小部件,用于显示旋转的图像条。然后,您可以实现其中一个回调(onFling将起作用),以知道何时为下面的列表视图加载新数据。

以下是关于使用图库小部件的官方Android tutorial

干杯

+0

thnaks为您的答复。我已经看过那个画廊的例子,只有图像被加载到画廊,但我的要求是加载图像+文本到画廊。你能以这种方式建议我吗? – Venugopal 2011-03-02 08:31:35

+0

当然:首先看看这个例子:http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/Gallery1.html 请注意扩展BaseAdapter的ImageAdapter类。它包含一个getView方法。您可以创建一个包含图像+文本的自定义视图,并从该方法返回它。与所有其他视图一样,此视图可以使用XML来指定。 – Jason 2011-03-03 16:22:48

+0

感谢您的回复。我已经完成了与你建议的相同的事情。这与使用自定义列表视图非常相似。 – Venugopal 2011-03-04 05:44:01

2

VENU,

创建一个包含自定义视图和ImageView的和一个TextView

您可以设置手势监听器上的任何看法。 代码看起来是这样的:

protected static final float LARGE_MOVE = 60; 
private SimpleOnGestureListener gestureListener; 
private GestureDetector gestureDetector; 

gestureListener = new SimpleOnGestureListener() { 
      @Override 
      public boolean onFling(android.view.MotionEvent e1, 
        android.view.MotionEvent e2, float velocityX, 
        float velocityY) { 

       int _index = //your current image 
       int _size = //number of images you have to swipe through 

       if (e1.getX() - e2.getX() > LARGE_MOVE) { 
        // Log.d("swipe", "SWIPE LEFT"); 
        _index += 1; 
        if (_index > _size - 1) { 
         _index = 0; 
        } 

        return true; 
       } else if (e2.getX() - e1.getX() > LARGE_MOVE) { 
        // Log.d("swipe", "SWIPE RIGHT"); 
        _index -= 1; 
        if (_index < 0) { 
         _index = _size - 1; 
        } 
        return true; 

       } 
       return false; 
      }; 
     }; 
     gestureDetector = new GestureDetector(this, gestureListener); 

然后,你需要触摸事件传递给你的姿态探测器。

@Override 
    public boolean onTouchEvent(MotionEvent event) { 
     return gestureDetector.onTouchEvent(event); 
    } 

滑动手势会让你跟踪哪些数据的位置你就是。 那么它的更新文本和ImageView的,或者如果你需要动画,只需之间动画的简单的事情您的自定义视图的两个或更多实例。

希望有所帮助。祝你好运

+0

感谢您的回复。如果我们在整个屏幕上的任何地方滑动,onTouchEvent()方法将被通知,但我不想要。我们必须保持滑动效果只在该imageView。是否可以仅在ImageView上设置滑动效果? – Venugopal 2011-03-03 04:48:44

+0

您可以将侦听器添加到所需的图像视图中。例如ImageView iv =(ImageView)findViewById(R.id.btn_home);如果你的活动实现了onTouchListener接口, – 2011-03-19 14:53:55