从右到左绘制Android Gallery项目

时间:2011-06-02 22:11:07

标签: android drawing gallery

我想使用Android图库但是从右到左绘制项目(希伯来语的书写方向) 图库项目代表用希伯来语书写的书中的章节,因此项目顺序很重要

Android以相反的方向绘制它们(选择第一项) 1 2 3 4 5

而不是这个 5 4 3 2 1

我已经尝试在我的Gallery类中重写这些方法 (它们都没有改变绘图顺序):

@Override
public int getChildDrawingOrder(int childCount, int i) {
    return getChildDrawingOrder(childCount, childCount - i+1)
}

我从调试中知道访问了getChildDrawingOrder 我尝试了几种不同的方法,但没有它们工作

我也试过

@Override
public void onDraw(Canvas canvas) {
    canvas.save();
    canvas.rotate(180, getWidth()/2, getHeight()/2);
    super.onDraw(canvas);
    canvas.restore();
}

如果有人能帮助我,我会很高兴的 我无法做到这一点

非常感谢你 奥龙

1 个答案:

答案 0 :(得分:3)

使用ImageAdapter类向图库输入图像,然后按相反的顺序加载图像,例如

gallery = (Gallery) findViewById(R.id.gallery);
Integer[] mImageIds = new Integer[] {                   
    R.drawable.chapter_5_image,
    R.drawable.chapter_4_image,
    R.drawable.chapter_3_image,             
    R.drawable.chapter_2_image,
    R.drawable.chapter_1_image};
    imageAdapter = new ImageAdapter(this, mImageIds);
    gallery.setAdapter(imageAdapter);

ImageAdapter类应该扩展android.widget.BaseAdapter - 有很多例子可以展示如何实现这种类型的适配器。

另外,在库中设置初始选择如下:

gallery.setSelection(4, true);

这应该定位图库以显示第1章图像。