如何从getItemAtPostion方法获取View / Widget,android?

时间:2011-02-10 12:43:32

标签: android gallery

如何使用gallery.getItemAtPosition(position) 得到如下的视图对象。

Object obj = gallery.getItemAtPosition(position);
View v = (View)object;
ImageView imgview = (ImageView)v.findViewById(R.id.imageId);

但如果我这样使用它会给出类强制转换异常。

2 个答案:

答案 0 :(得分:1)

通常我会在选择事件

上使用它
public void onItemSelected(AdapterView arg0, View v, int position,
            long arg3) {
        //here v is the imageview which is selected.
                //In your case u might want something like this.
                ImageView img = (ImageView) arg0.getChildAt(position); //To get the view
}

答案 1 :(得分:0)

源代码没有多大意义,或缺少重要信息。 您是否已将SpinnerAdapter连接到图库?适配器返回什么类型的对象?

我假设图库中的所有对象都属于同一类型?

Object obj = gallery.getItemAtPosition(position); 

您应该直接转换为此对象类型。

TheType obj = (TheType)gallery.getItemAtPosition(position);