Есть ли способ найти шрифт и размер кадра заголовка UINavigationBar?

Есть ли способ программно вернуть шрифт и размер строки заголовка контроллера навигации (например, self.title.frame.size или self.title.font , хотя я не знаю ни одной из этих работ)?

(Если вам интересно, в чем причина, я хотел бы использовать метод NSString sizeWithFont , чтобы определить, сколько текста может поместиться в название, прежде чем я его усекаю. Я мог бы сделать это, физически измерив шрифт и размер кадра самостоятельно (например, я думаю, что это ' t поймать экранированную цитату

Код:

public void test() {
    String str = "\"Hello\\\" World\" \"Hello Universe\" Hi";
    List<String> list = split(str);
}

public static List<String> split(String str) {
    Pattern pattern = Pattern.compile(
        "\"[^\"]*\"" + /* double quoted token*/
        "|'[^']*'" + /*single quoted token*/
        "|[A-Za-z']+" /*everything else*/
    );

    List<String> opts = new ArrayList<String>();
    Scanner scanner = new Scanner(str).useDelimiter(pattern);

    String token;
    while ((token = scanner.findInLine(pattern)) != null) {
        opts.add(token);
    }
    return opts;
}

Таким образом, неправильный вывод следующего кода:

  • "Привет \"
  • Мир
  • ""
  • Привет
  • Вселенная
  • Привет

ИЗМЕНИТЬ Я полностью открыт для решения без регулярных выражений. Это только первое решение, которое пришло мне в голову

5
задан Glen 17 May 2011 в 12:20
поделиться