cancel
Showing results for 
Search instead for 
Did you mean: 

How to implement FUIGridTableViewCell with FUIGridTableViewHeader

0 Kudos

Hi,

I am trying to implement FUIGridTableViewCell with FUIGridTableViewHeader using below link with SAP iOS SDK :

https://help.sap.com/doc/978e4f6c968c4cc5a30f9d324aa4b1d7/2.0/en-US/Documents/Frameworks/SAPFiori/gr...

But I am getting error on below line. Please help me.

I need to implement Grid view or Table view with header.

 let data = contentData[indexPath.row] {
        cell.gridItems = data.gridItems
}

let header = tableView.dequeueReusableHeaderFooterView(withIdentifier: FUIGridTableViewHeader.reuseIdentifier) as! FUIGridTableViewHeader
        header.gridItems = headerData.gridItems
former_member190800
Contributor
0 Kudos

ruchi.shree1 My guess is that you have not registered the FUIGridTableViewHeader class as a header/footer view on the table view?

Can you try using the UITableView API:

func register(_ aClass: AnyClass?, forHeaderFooterViewReuseIdentifier identifier: String)

If this doesn't help, can you share the details of your error?

0 Kudos

I have registered tableview with FUIGridTableViewHeader

tableView.register(FUIGridTableViewHeader.self, forHeaderFooterViewReuseIdentifier: FUIGridTableViewHeader.reuseIdentifier)

I followed steps mentioned in portal https://help.sap.com/doc/978e4f6c968c4cc5a30f9d324aa4b1d7/2.0/en-US/Documents/Frameworks/SAPFiori/gr...

still i am getting error is

Value of type 'FUIGridRowItem' has no member 'gridItems'. Is there some other api to set data for Grid cell.

0 Kudos

Hi Folks,

I tried to implement FUIGridTableViewHeader using below code, but still table view header is not appearing on screen.

tableView.sectionHeaderHeight = UITableView.automaticDimension

tableView.estimatedSectionHeaderHeight = 100

tableView.register(FUIGridTableViewHeader.self, forHeaderFooterViewReuseIdentifier: FUIGridTableViewHeader.reuseIdentifier)

override func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {

let header = tableView.dequeueReusableHeaderFooterView(withIdentifier: FUIGridTableViewHeader.reuseIdentifier) as! FUIGridTableViewHeader

var headerData: [FUIGridRowItem] {

let item0 = FUIGridRowHeaderItem(text: "1")

let item1 = FUIGridRowHeaderItem(text: "Symbol")

let item2 = FUIGridRowHeaderItem(text: "Open")

let item3 = FUIGridRowHeaderItem(text: "High")

let item4 = FUIGridRowHeaderItem(text: "Low")

let item5 = FUIGridRowHeaderItem(text: "Close")

return [item0, item1, item2, item3, item4, item5]

}

// set column widths.Should be shared by rows and header.

header.items = headerData

header.columnWidthPercent = [-1, 0.2, 0.1, 0.1, 0.1, 0.1]

return header

}

Could you please help me , did i miss anything?

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member190800
Contributor

billzhou can you look?

0 Kudos

Kindly look.