Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 获取上次更新值的UIButton标记_Ios_Sqlite_Tags_Uibutton_Nsmutablearray - Fatal编程技术网

Ios 获取上次更新值的UIButton标记

Ios 获取上次更新值的UIButton标记,ios,sqlite,tags,uibutton,nsmutablearray,Ios,Sqlite,Tags,Uibutton,Nsmutablearray,我需要在UIWebView中创建多个按钮。所以,我用标签作为按钮。我用整数将按钮标记保存到数据库中。但它没有保存适当的价值。每个按钮标签在数据库中都有文本。稍后我需要取回。但在将最后一个值存储到数据库并单击任何其他按钮后,它只获取最后一个更新的值。为什么会这样 表: textnotes text_id button_id hi 1 1 how are you 1 3 im fine

我需要在UIWebView中创建多个按钮。所以,我用标签作为按钮。我用整数将按钮标记保存到数据库中。但它没有保存适当的价值。每个按钮标签在数据库中都有文本。稍后我需要取回。但在将最后一个值存储到数据库并单击任何其他按钮后,它只获取最后一个更新的值。为什么会这样

表:

textnotes          text_id   button_id

  hi                1         1
  how are you       1         3
im fine             2         7
  This is test       2         11
UI按钮:

int gTag = 1;
webviewbutton.tag = gTag;
 gTag++;

[wbCont.scrollView  addSubview:webviewbutton];
插入:

const char *sqlInsert = [[NSString stringWithFormat:@"insert into textnote (textnotes,text_id,button_id ) values ('%@','%@','%ld')", txtview.text,artID,(long)webviewbutton.tag] cStringUsingEncoding:NSUTF8StringEncoding];
从数据库检索包含文本的按钮标记:

    textArray=[[NSMutableArray alloc]init];

        webbutton_art=[[NSMutableArray alloc]init];

        webbutton_button=[[NSMutableArray alloc]init];

    if (sqlite3_open([path UTF8String], &database) == SQLITE_OK) {
    const char *sql =  [[NSString stringWithFormat:
                                     @"SELECT textnotes,text_id,button_id FROM textnote where button_id = '%ld' AND text_id = '%@' ",(long)webviewbutton.tag,artID]cStringUsingEncoding:NSUTF8StringEncoding];


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

                sqlite3_stmt *statement;

                if (sqlite3_prepare_v2(database, sql, -1, &statement, NULL) == SQLITE_OK) {

                    while (sqlite3_step(statement) == SQLITE_ROW) {

                        txtstring = [[NSString alloc] initWithUTF8String:
                                     (const char *) sqlite3_column_text(statement, 0)];


                        webbutton_textartid = sqlite3_column_int(statement, 1);

                        webbutton_buttontag= sqlite3_column_int(statement, 2);

          [textArray addObject:txtstring];

         [webbutton_art addObject:@(webbutton_textartid)];

                        [webbutton_button addObject:@(webbutton_buttontag)];


    if( webbutton_art  && webbutton_button ){

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


txtview = [[UITextView alloc]initWithFrame:CGRectMake(0,0,320,568)];

        txtview.font = [UIFont fontWithName:@"Helvetica" size:12];


             txtview.text=[textArray objectAtIndex:i];

 [self.view addSubview:txtview];

             }



    }
textArray=[[NSMutableArray alloc]init];
webbutton_art=[[NSMutableArray alloc]init];
webbutton_button=[[NSMutableArray alloc]init];
if(sqlite3_打开([path UTF8String],&database)==SQLITE_确定){
const char*sql=[[NSString stringWithFormat:
@“从textnote中选择textnotes、text_id、button_id,其中button_id='%ld'和text_id='%@',(长)webviewbutton.tag,artID]cStringUsingEncoding:NSUTF8StringEncoding];
NSLog(@“sql为%s”,sql);
sqlite3_stmt*语句;
if(sqlite3\u prepare\u v2(数据库,sql,-1,&语句,NULL)==SQLITE\u OK){
while(sqlite3\u步骤(语句)=SQLITE\u行){
txtstring=[[NSString alloc]initWithUTF8String:
(const char*)sqlite3_column_text(语句,0)];
webbutton_textarId=sqlite3_column_int(语句,1);
webbutton_buttontag=sqlite3_column_int(语句,2);
[textArray addObject:txtstring];
[webbutton_art addObject:@(webbutton_textartid)];
[webbutton_button addObject:@(webbutton_button Tag)];
if(webbutton_艺术&webbutton_按钮){

对于(int i=0;i声明一个整数变量,如:

int offset;
然后像这样做:

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



        UITextView *txtview = [[UITextView alloc]initWithFrame:CGRectMake(100,100+offset,320,568)];

        txtview.font = [UIFont fontWithName:@"Helvetica" size:12];


        txtview.text=[textArray objectAtIndex:i];

        [self.view addSubview:txtview];

        offset = offset + 50;
    }

用于(int i=0;如果第一件事是检查againI没有得到的标记。如何?我需要在检索中更改代码吗?记录它们以查看您得到的值使用断点检查,标准,我认为这是一个小问题,只有彻底检查才会发现int gTag=1;我希望您每次都初始化,它不会递增…或者(int i=0;iIs需要gTag变量?因为gTag变量也用于其他用途。您添加了偏移量吗?您最好做一件事,将代码发送给我,我会为您解决此问题。您可以给我们的邮件ID吗。khiwani92@gmail.com