Xuni for IOS のドキュメント
グループ化

FlexGrid は、ICollectionView を使用したグループ化をサポートします。グループ化を有効にするには、1 つ以上の GroupDescription オブジェクトを CollectionView.groupDescriptions プロパティに追加します。GroupDescription オブジェクトは柔軟であり、値またはグループ化関数に基づいてデータをグループ化できます。

注意:ユーザーは、グループ行をタップしてまたは展開/折りたたみアイコンを使用してグループを展開と折りたたむことができます。

次の図は、これらのプロパティを設定した後の FlexGrid を示しています。

FlexGrid Grouping

次のコード例は、FlexGridにグループ化を設定する方法を示します。この例では、「クイックスタート」セクションで作成したサンプルを使用しています。

サンプルコード

//必要なヘッダファイルをインポートします
import UIKit
import XuniFlexGridKit

class ViewController: UIViewController
{
   //FlexGrid コントロールを初期化します
    var grid = FlexGrid()
    override func viewDidLoad()
    {
        super.viewDidLoad()
          // ビューを読み込んだ後の追加セットアップを行います(通常は nib から)。
        grid.isReadOnly = true
       
         //データソースを接続します
        grid.itemsSource = FlexGridDataSource.getCustomerData(10)
        grid.autoGenerateColumns = true
        grid.allowSorting = true
        
        self.view.addSubview(grid)
        
        let gd = XuniPropertyGroupDescription(property: "country")
        grid.collectionView.groupDescriptions.addObject(gd)
    }
    
    override func viewDidLayoutSubviews()
    {
        super.viewDidLayoutSubviews()
        grid.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height/3)
     }
}
//必要なヘッダファイルをインポートします
#import "ViewController.h"
#import <XuniFlexGridKit/XuniFlexGridKit.h>
#import <XuniCoreKit/XuniCoreKit.h>
#import "FlexGridDataSource.h"

@interface ViewController ()
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // ビューを読み込んだ後の追加セットアップを行います(通常は nib から)。
        
  //FlexGrid コントロールを初期化します
    FlexGrid *grid = [[FlexGrid alloc] init];
    //データソースを接続します
    grid.itemsSource = [FlexGridDataSource demo];
    grid.autoGenerateColumns = true;
    grid.allowSorting = true;
    self.view = grid;
    
    XuniPropertyGroupDescription *gd = [[XuniPropertyGroupDescription alloc]initWithProperty:@"Country"];
    [grid.collectionView.groupDescriptions addObject:gd];
   }
@end 

 

 


Copyright © GrapeCity inc. All rights reserved.