搜索通过NSArray发布到Tableview

时间:2015-09-03 06:33:02

标签: xcode uitableview nsmutablearray nsarray

我有一个装有对象的NSArray(见下文)。我需要根据从另一个tableview中单击哪个indexpath.row将这些加载到tableview中。

如果用户选择indexpath.row = 0,则第二个tableview将重新加载ORDER_CODE,其中只包含GROUP = 0。 如果用户选择indexpath.row = 1,那么第二个tableview将重新加载ORDER_CODE,其中只包含GROUP = 1.

任何人都有关于如何通过数组搜索并将相关数据显示在第二个表格视图中的任何建议/编码?

array=(
        {
        GROUP = 0;
        "ORDER_CODE" = 410;
        "PROD_DESCR" = "cement";
        id = 0;
    },
        {
        GROUP = 0;
        "ORDER_CODE" = 411;
        "PROD_DESCR" = "concrete";
        id = 1;
    },
        {
        GROUP = 1;
        "ORDER_CODE" = 405;
        "PROD_DESCR" = "asphalt";
        id = 2;
    })

1 个答案:

答案 0 :(得分:0)

尝试使用以下代码从给定数组中过滤结果(单击特定的tablerow)

NSArray *array; //your data array

//create a search predicate to filter the array
NSPredicate *searchPredicate = [NSPredicate predicateWithBlock:^BOOL(NSDictionary * evaluatedObject, NSDictionary *bindings) {

    BOOL isValidGroup = [evaluatedObject[@"GROUP"] integerValue] == indexPath.row;
    return isValidGroup;
}];

NSArray *filteredArray = [array filteredArrayUsingPredicate:searchPredicate]; //this is the filtered array you can use for the displaying in the table