Skip to content

Commit

Permalink
fix: 🐛 [jira: 2279] fix a layout error in DataTable
Browse files Browse the repository at this point in the history
  • Loading branch information
shengxu7 committed May 24, 2023
1 parent c892677 commit 0f5ff9f
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ struct DataTableExample: View {
destination: DataTableExampleView(model: TestRowData.generateData(row: 10, column: 5, containLeadingAccessory: true, containTrailingAccessory: false, isHeaderSticky: false, isFirstColumnSticky: true, isPinchZoomEnable: true, showListView: false)))

NavigationLink("Sticky header & column",
destination: DataTableExampleView(model: TestRowData.generateData(row: 10, column: 5, containLeadingAccessory: false, containTrailingAccessory: false, isHeaderSticky: true, isFirstColumnSticky: true, isPinchZoomEnable: true, showListView: false)))
destination: DataTableExampleView(model: TestRowData.generateData(row: 10, column: 5, containLeadingAccessory: false, containTrailingAccessory: false, isHeaderSticky: true, isFirstColumnSticky: true, isPinchZoomEnable: true, showListView: false, isFixedWidth: true)))
}

Section(header: Text("Variant rows/columns")) {
Expand Down Expand Up @@ -311,16 +311,16 @@ public enum TestRowData {
return TableRowItem(data: data)
}

static func generateColumnAttributes(column: Int) -> [ColumnAttribute] {
static func generateColumnAttributes(column: Int, isFixedWidth: Bool = false) -> [ColumnAttribute] {
var output: [ColumnAttribute] = []
for _ in 0 ..< column {
let att = ColumnAttribute(textAlignment: .leading, width: .flexible)
let att = ColumnAttribute(textAlignment: .leading, width: isFixedWidth ? .fixed(200) : .flexible)
output.append(att)
}
return output
}

static func generateData(row: Int, column: Int, containLeadingAccessory: Bool = true, containTrailingAccessory: Bool = true, containIndex: Bool = false, isHeaderSticky: Bool = true, isFirstColumnSticky: Bool = true, isPinchZoomEnable: Bool = true, showListView: Bool = false) -> TableModel {
static func generateData(row: Int, column: Int, containLeadingAccessory: Bool = true, containTrailingAccessory: Bool = true, containIndex: Bool = false, isHeaderSticky: Bool = true, isFirstColumnSticky: Bool = true, isPinchZoomEnable: Bool = true, showListView: Bool = false, isFixedWidth: Bool = false) -> TableModel {
var res: [TableRowItem] = []
var titles: [DataTextItem] = []
for k in 0 ..< column {
Expand All @@ -331,7 +331,7 @@ public enum TestRowData {
}
let header = TableRowItem(data: titles)
let model = TableModel(headerData: header, rowData: res, isHeaderSticky: isHeaderSticky, isFirstColumnSticky: isFirstColumnSticky, isPinchZoomEnable: isPinchZoomEnable, showListView: showListView)
model.columnAttributes = self.generateColumnAttributes(column: column)
model.columnAttributes = self.generateColumnAttributes(column: column, isFixedWidth: isFixedWidth)
model.didSelectRowAt = { rowIndex in
print("Tapped row \(rowIndex)")
}
Expand Down
1 change: 1 addition & 0 deletions Sources/FioriSwiftUICore/DataTable/ItemView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,7 @@ struct FocusedEditingView: View {
.background((self.checkIsValid() ? Color.preferredColor(.tintColor) : Color.preferredColor(.negativeLabel)).opacity(self.colorScheme == .light ? 0.1 : 0.2))
.lineLimit(dataItem.lineLimit)
.multilineTextAlignment(dataItem.textAlignment)
.frame(width: contentWidth, alignment: dataItem.textAlignment.toTextFrameAlignment())
.accessibility(hidden: self.editingText.isEmpty)
}
}
Expand Down

0 comments on commit 0f5ff9f

Please sign in to comment.