2012-12-19 29 views
5

Bất cứ ai có thể cho tôi biết làm thế nào tôi có thể setTag và getTag cho những hình ảnh trong GridView. Tôi đã viết đoạn mã sau, nhưng nó không hoạt động. Mã sau có đúng không?Android: Làm thế nào tôi có thể giải quyết cho những hình ảnh trong GridView?

int jj=100; 
    for(int j=0;j<imageid.length;j++)//imageid is the array of drawable images 
     { 
     griview1.getChildAt(j).setTag(jj); 
     System.out.println(g.getChildAt(j).getTag()); 
     } 

đây là phương pháp getView tôi

public View getView(int arg0, View arg1, ViewGroup arg2) { 
    // TODO Auto-generated method stub 

    ImageView imv; 
    if(arg1!=null) 
    { 
     imv=(ImageView)arg1; 
    } 
    else 
    { 
     imv=new ImageView(cont); 
     imv.setLayoutParams(new GridView.LayoutParams(40,40)); 
     imv.setScaleType(ScaleType.CENTER_CROP); 
     imv.setPadding(0,0,0,0); 

     } 

    } 
    imv.setImageResource(imageid[arg0]); 
    return imv; 
+0

bạn đã thực hiện một bài như thế này trước và một phản ứng rất hợp lệ đã được trình bày cho bạn. nếu bạn định đi bất cứ đâu, hãy đăng bộ điều hợp tùy chỉnh của bạn. Hãy xem những gì bạn đang làm trong 'getView() ' – mango

+0

Tôi thực sự xin lỗi bạn đời, do nhầm lẫn tôi đã xóa bài trước đó. –

Trả lời

0

Cuối cùng bản thân mình tôi đã nhận được câu trả lời cho tôi question.Thank bạn cho tất cả những ai đã họ đề xuất có giá trị.

trong nghe Grid-view của duy nhất tôi thiết lập các thẻ cho các tế bào lưới-view bằng cách kiểm tra điều kiện

for example:  
if(position==20) 

g.setTag("our tag"); 
0

chỉ cần đặt thẻ của bạn bên trong getView

public View getView(int arg0, View arg1, ViewGroup arg2) { 

    if(arg1!=null) 
    { 
     ImageView imv = new ImageView(cont); 
     imv.setLayoutParams(new GridView.LayoutParams(40,40)); 
     imv.setScaleType(ScaleType.CENTER_CROP); 
     imv.setPadding(0,0,0,0); 

     arg1 = imv; 
    } 
    arg1.setTag(arg0); 
    return arg1; 
} 
+0

Cảm ơn bạn cho mate.but này Tôi đã cố gắng this.I muốn đặt thẻ riêng của tôi thay vì các vị trí (ví dụ, ở đây arg0). –

+0

cũng chắc chắn là có thể. bạn có thể đặt bất kỳ đối tượng nào làm thẻ của bạn. bạn nghĩ gì về thẻ của bạn? nếu bạn cần tất cả các thẻ này khác nhau nhưng tại các vị trí cụ thể, có lẽ bạn sẽ có một bộ sưu tập các đối tượng được lập chỉ mục với thẻ nào ở vị trí nào. – mango

Các vấn đề liên quan