1

グループ化されたテーブルビューのセルにUISwitchを追加しようとしていますが、これを行うための適切な方法が得られていません。私を助けてください。ありがとう&よろしく、チャクリ

4

3 に答える 3

1

UISwitchボタンをアクセサリとして設定UITableViewCell

-(UITableViewCell*) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString* cellId = @"cellId";
    UITableViewCell* cellView = [self.tableView dequeueReusableCellWithIdentifier:cellId];
    if(!cellView) {
        cellView = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellId];
        UISwitch* switchBtn = [[UISwitch alloc] init];
        [switchBtn addTarget:self action:@selector(onSwitchBtn:) forControlEvents:UIControlEventValueChanged];
        cellView.accessoryView = switchBtn;
    }
    return cellView;
}
于 2012-09-03T08:18:02.740 に答える
1

既存の(Objective-C)回答をC#に変換できますが、MonoTouchを使用しているため、MonoTouch.Dialog(およびサンプルアプリケーション)を確認する必要があります。

それに加えて、はるかに簡単なAPIを提供し、UITableViewテーブルを必要とする一般的な使用法/シナリオのほとんどをカバーします。

UISwitchセルで使用されていることを確認するには、(前のリンクの)スクリーンショットを参照してください。

于 2012-09-03T14:23:47.827 に答える
0

ストーリーボードまたはxibsを使用していますか?ストーリーボードでは、UISwithをセルにドラッグできると思います。

xibsを使用している場合は、カスタムセルが必要になります。Interface Builderを使用して、UITableViewCellをテーブルビューの外側のxibにドラッグし、UISwitchをUITableViewCellの内側にドラッグして、UITableViewCellにIBOutletを配置します。

 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.row == rowWhereYouWantTheCellWithTheUISwitch){
    return UITableViewCellWithTheSwitchName;
}
}

rowWhereYouWantTheCellWithTheUISwitchは、カスタムセルが必要なセルの番号です。UITableViewCellWithTheSwitchNameは、作成したIBOutletの名前です。

于 2012-09-03T08:03:11.893 に答える