如何使用int i = cat_iamgeId而不是int i = 0

时间:2013-12-11 11:01:50

标签: ios sqlite tags uibutton nsmutablearray

我在数据库中有id值和product_image值。图像与id值相关联。我将productimg_array图像值设置为按钮以进行单击。所以,我需要在这个按钮上设置id值。所以,我是循环的。如果我使用int i = 0,则显示图像,但如果我设置int i = cat_iamgeId,则图像不显示。为什么呢?

productimg_array = [[NSMutableArray array]init];

       cat_imageidArray = [[NSMutableArray alloc]init];


        const char *sql = "SELECT id,cat_id,product_image,order_by,description FROM product where cat_id = ?";

        NSLog(@"sql is %s",sql);

        sqlite3_stmt *statement;

        if (sqlite3_prepare_v2(database, sql, -1, &statement, NULL) == SQLITE_OK) {
            // We "step" through the results - once for each row.




            if (sqlite3_bind_int(statement, 1, categoryId) != SQLITE_OK)
                NSLog(@"%s: bind failed: %s", __FUNCTION__, sqlite3_errmsg(database));


            while (sqlite3_step(statement) == SQLITE_ROW) {


                cat_iamgeId = sqlite3_column_int(statement, 0);


                NSLog(@"cat_iamgeId is %ld",(long)cat_iamgeId);

                [cat_imageidArray addObject:@(cat_iamgeId)];


                product_image = [[NSString alloc] initWithUTF8String:
                                 (const char *) sqlite3_column_text(statement, 2)];
                NSLog(@"product_image is %@",product_image);

                [productimg_array addObject:product_image];


              NSLog(@"productimg_array %@", productimg_array);



           }


        }

对于UIButton的循环点击:

//   for (int i = 0; i<[productimg_array count]; i++ ) {


              for (int i = cat_iamgeId; i<[productimg_array count]; i++ ) {


           NSLog(@"productimg_array_index %@", productimg_array[i]);


                imgView1=[[UIButton alloc]initWithFrame:CGRectMake(20+(i*74), 0, 72, 72)];

                Width = Width + 20+(i*74);


              //  tag=[[cat_imageidArray objectAtIndex:i]intValue];

                imgView1.tag=i;


                  NSLog(@"product id is %ld ", (long)imgView1.tag);


                [imgView1 addTarget:self action:@selector(dbsofaClicked:) forControlEvents:UIControlEventTouchUpInside];


                [imgView1 setImageWithURL:[NSURL URLWithString:[productimg_array objectAtIndex:i]]
                                 forState:UIControlStateNormal];



                [scrollview addSubview:imgView1];


    }

0 个答案:

没有答案
相关问题