awakeFromNib не называют в моем ViewController

Основываясь на решении Райана Эмерла, это добавляет черточки в правильные места, не включает в себя конечные пробелы, не множит числа и правильно обрабатывает ввод ноль (0):

public static string ToText(long n) {
    return _toText(n, true);
}
private static string _toText(long n, bool isFirst = false) {
    string result;
    if(isFirst && n == 0) {
        result = "Zero";
    } else if(n < 0) {
        result = "Negative " + _toText(-n);
    } else if(n == 0) {
        result = "";
    } else if(n <= 9) {
        result = new[] { "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine" }[n - 1] + " ";
    } else if(n <= 19) {
        result = new[] { "Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen" }[n - 10] + (isFirst ? null : " ");
    } else if(n <= 99) {
        result = new[] { "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety" }[n / 10 - 2] + (n % 10 > 0 ? "-" + _toText(n % 10) : null);
    } else if(n <= 999) {
        result = _toText(n / 100) + "Hundred " + _toText(n % 100);
    } else if(n <= 999999) {
        result = _toText(n / 1000) + "Thousand " + _toText(n % 1000);
    } else if(n <= 999999999) {
        result = _toText(n / 1000000) + "Million " + _toText(n % 1000000);
    } else {
        result = _toText(n / 1000000000) + "Billion " + _toText(n % 1000000000);
    }
    if(isFirst) {
        result = result.Trim();
    }
    return result;
}
7
задан Boon 3 June 2009 в 09:53
поделиться

2 ответа

Я думаю, что вы ищете viewDidLoad . awakeFromNib вызывается только для объектов, загружаемых из пера. Сам контроллер получает viewDidLoad: . Поскольку вы вызываете initWithNibName: bundle: , на самом деле он не разархивируется из пера!

17
ответ дан 6 December 2019 в 07:52
поделиться

UIViewController лениво загружает свое представление, только когда оно необходимо для отображения. Это касается как программного создания представления с помощью -loadView, так и разархивирования из пера.

Вы можете вызвать загрузку представления, обратившись к свойству представления UIViewController.

4
ответ дан 6 December 2019 в 07:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: