80

プログラムでセグメント数を変更する方法はありますか?

4

7 に答える 7

139

はい、使用できます

removeSegmentAtIndex:(NSUInteger) animated:(BOOL)

insertSegmentWithTitle:(NSString *) atIndex:(NSUInteger) animated:(BOOL)
于 2012-07-24T20:41:37.800 に答える
4

これは、セグメントを一連の文字列に置き換えるための Swift 拡張です。これは、任意のシーケンスで使用できることを除いて、ここに記載されている別の回答に似ています。つまり、スライス、セットなどを渡すこともできます。

extension UISegmentedControl {

    /// Replace the current segments with new ones using a given sequence of string.
    /// - parameter withTitles:     The titles for the new segments.
    public func replaceSegments<T: Sequence>(withTitles: T) where T.Iterator.Element == String {
        removeAllSegments()
        for title in withTitles {
            insertSegment(withTitle: title, at: numberOfSegments, animated: false)
        }
    }
}
于 2017-04-06T18:20:38.757 に答える
3

完全を期すために(そして、xibで同じことを達成する方法を探してここにたどり着いたため)、xibでそれを行う方法は次のとおりです。

ここに画像の説明を入力

于 2014-11-13T23:07:45.080 に答える
0

私にとっては、UIsegmentedControll には 2 つのセグメントが含まれています。インデックス 2 に 1 つ追加したいので、このコードを迅速な 2.2 で使用します。

SEG_TipoFiltro.insertSegmentWithTitle("Title", atIndex: 2, animated: false)
于 2016-06-22T03:40:09.190 に答える