この画面のような複数行のラベルをテーブルビューに追加するにはどうすればよいですか (マルチタスク ジェスチャの下のラベル): http://cl.ly/6g0B
2 に答える
テーブルビューをグループ化する必要があります (少なくとも iOS デバイスを対象とする場合)。次に、行を含むテーブル ビュー セクションを作成すると、複数行のラベルがheaderView プロパティを通じてセクションに追加されます。
ここで TableViewSection ビューのドキュメントを確認してください: http://developer.appcelerator.com/apidoc/mobile/latest/Titanium.UI.TableViewSection-object
簡単な例 - 未テストです。申し訳ありませんが、現時点では Mac を持っていませんが、原理はしっかりしています。ヘッダー ビューを作成し、セクションを作成し、セクション ヘッダー ビューを設定し、セクションにいくつかのセルを追加し、テーブルにセクションの配列を与えます。
var tableView = Ti.UI.createTableView({
style: Ti.UI.iPhone.TableViewStyle.GROUPED
});
var tableData = [];
var multiLineLabelView = Ti.UI.createView();
var line1 = Ti.UI.createLabel({
text: 'Some text'
});
var line2 = Ti.UI.createLabel({
text: 'More text',
top: 20
});
multiLineLabelView.add(line1);
multiLineLabelView.add(line2);
var section = Ti.UI.createTableViewSection({
headerView: multiLineLabelView,
height: 40
});
var row1 = Ti.UI.createTableViewRow({
title: 'Row 1'
});
var row2 = Ti.UI.createTableViewRow({
title: 'Row 2'
});
section.add(row1);
section.add(row2);
tableData.push(section);
tableView.data = tableData;
注意すべき重要なことは、単一のテーブルのみが必要であるということです。指定した例では、行は代わりにセクションにグループ化され、その一部にはヘッダーがあります。
これは実際には (少なくとも Titanium では) を作成することで行われheaderView
ます。
headerLabel = Ti.UI.createLabel({
text: 'line 1'
});
headerView = Ti.UI.createView({
height: 60
});
headerSection = Ti.UI.createTableViewSection();
headerView.add(headerLabel);
headerSection.add(headerView);
tableView.add(headerSection);
labels
ビューにさらに追加して、height
それに応じて調整するように設定できます。headerSection
また、を入力する必要がありますdata
。