Как к розетке подключить телефон


Как подключить телефонную розетку: схема и этапы установки

Несмотря на стремительный спад популярности стационарных телефонных аппаратов, людей, готовых отказаться от них наотрез, не так уж и много. Признайтесь, случается, что без традиционной связи порой крайне сложно или вообще невозможно обойтись.

Для подключения аппарата к коммутационной сети нужен слаботочный узел, с установкой которого можно справиться собственноручно. Мы детально расскажем вам, как подключить телефонную розетку, не вызывая мастера.

В схемах и способах нет абсолютно ничего сложного, а разобраться с вопросом помогут предложенная нами полезная информация, а также фото и видеоматериалы.

Содержание статьи:

Конструктивные особенности телефонной розетки

Конструкции стационарных телефонов с каждым годом модифицируются и улучшаются. И современные устройства значительно превосходят своих предшественников, выгодно выделяясь на фоне их высокой надежностью и удобством применения.

Для обеспечения бесперебойного функционирования прибора необходимы два условия:

  1. Наличие действующей линии связи от АТС.
  2. Возможность электрического подключения стационарного аппарата к этой линии.

Единственное, что не меняется в сфере телефонизации – принцип работы стационарных телефонов. Однако есть существенные изменения в конструкциях и методах подключения.

Старые и новые варианты телефонной коммутации представлены в фото-подборке:

Галерея изображений

Фото из

Телефонная розетка требуется для создания прочного, но быстроразъемного подключения стационарного телефонного аппарата к стационарным телефонным линиям

Розетка для подключения телефона может устанавливаться обособленно или в формате блока силовых и коммутационных розеток

По сей день в домах старой застройки, бюджетных организациях, которым более 15-20 лет, встречаются линии с розетками советского стандарта Устаревший тип соединения РТШК-4

Сейчас слаботочные сети оснащаются совершенно другими разъемами, соответствующими группе стандартов RJ

Для облегчения процедуры монтажа и подключения розетки внутреннюю часть устройства оснащают метками и цветовыми обозначениями, помогающими верно подсоединить контакты

Серии розеток с разъемом RJ (9; 11; 14; 25) имеют схожую конструкцию и размеры, но снабжаются разными пластиковыми штекерами. Форма и габариты ступенек исключают подсоединение телефона к розетке RJ45

Для подключения двух конструктивно различающихся моделей телефонов, к примеру, устаревшей проводной и радио-модификации, используются комбинированные варианты с возможностью установки старой вилки и штекера RJ

В комбинированной розетке разъем RJ расположен сбоку, а контактные отверстия для подсоединения вилки на лицевой части

Цель установки розетки для подключения телефона к линии

Встраиваемый блок силовых точек с телефонной розеткой

Устаревший тип телефонного соединения РТШК-4

Телефонный разъем с соответствием стандарту RJ-11

Изображение схемы подключения на корпусе розетки

Пластиковый штекер к телефонной розетке типа RJ

Гибридный вариант конструкции телефонной розетки

Расположение гнезд комбинированной розетки

Несмотря на различия в конструкции и способах подсоединения любая телефонная розетка традиционно включает три основных элемента:

  • Корпус – выполнен из диэлектрического материала (керамики или пластика).
  • Контакты – подпружиненные латунные элементы, обеспечивающие надежное прохождение токов по электрической цепи.
  • Клеммы – переходники, необходимые для подключения проводов.

Электрические контактные гнезда стационарной розетки утоплены в корпус. Такое решение позволяет защитить прибор от случайных замыканий.

В продаже встречаются одно- и многоразъемные модели. Первые предназначены для подключения одного аппарата, вторые – позволяют коммутировать сразу несколько устройств.

Подключение телефонного аппарата для создания стационарного соединения осуществляется через розетку, идущей в комплекте с вилкой

Старые и современные стандарты устройств

По мере совершенствования оборудования способы подключения телефонов к сети связи испытали ряд изменений. В первых моделях телефонных аппаратов подключение к линии связи осуществлялось и вовсе без применения розеток.

Для создания замкнутого контура тока провода просто скручивали друг с другом, либо же соединяли любыми другими доступными способами.

В 80-х годах прошлого века соединения линий АТС осуществляли с помощью двухжильных медных проводов. А для обеспечения быстроразрывного подключения телефона использовали розетки и вилки стандарта РТШК-4. Эта аббревиатура расшифровывается как «розетка для телефонов штепсельного типа для четырех контактов».

Корпусы таких устройств оснащены защитным ключом – пластиковым соединением, позволяющим предупредить некорректную установку вилки в розетку

Конструкция РТШК-4 включает ключ и две пары контактов. Первая пара обеспечивает работу телефона в обычном режиме, вторая – позволяет подключать дополнительную линию при условии, что оба аппарата на одном телефонном номере.

На смену морально устаревшим моделям стандарта РТШК-4 в результате повсеместного распространения микропроцессорных технологий активно стало применяться оборудование Registered Jack, имеющее маркировку «RJ». Оно соответствует международному стандарту МЭК 60884-1 и 60669-1.

Современное стандартизованное оборудование для слаботочных цепей позволяет подключать в схему до четырех пар рабочих контактов

Подключение современных стационарных моделей телефонов для пользования на бытовом уровне осуществляют через розетки, оснащенные одной парой контактов. Корпуса таких устройств монтируются в полости пластикового модуля и обознаются символами RJ-11.

Между двумя контактами, представляющими собой компактные металлические вилки, заглублены жилы питающего провода. Модели стандарта RJ-11 рекомендованы для подключения аппаратов к телефонным магистралям линейного типа.

В центральной части пластикового модуля, именуемого манипулятором, расположены латунные контакты, через которые и создается электрическая сеть между телефоном и АТС

Для подключения двух аппаратов на отдельные линии и создании офисных мини-АТС используют устройства стандарта RJ-12 и RJ-14. Универсальные четырехжильные коннекторы подходят для большинства моделей телефонного оборудования.

Чтобы подключить сразу несколько приборов, нужно лишь собрать розетки последовательно в блоки, соблюдая при этом схему: первая линия присоединяется к контактам №2 и №3, а вторая – к №1 и №4. Устройства этой серии больше применяют для создания мини-АТС при обустройстве офисных помещений.

Модель с совмещенным разъемом РТШК-4 и RG-11 в основном применяют, когда необходимо с новой телефонной проводкой скоммутировать винтажный эксклюзивный старый телефон

Установка переходника позволяет соединять вилки как старых, так и новых стандартов с линиями, оснащенных с применением современных технологий.

Главным отличием устройств стандарта RJ-25 является три пары рабочих контактов. По этой причине подключение такого оборудования может выполнять только квалифицированный специалист, хорошо разбирающийся в вопросах телефонии и электрики.

Разъем RJ-45 имеет четыре пары контактов, но для создания электрической цепи задействуются только два контакта, расположенные ближе к центру

При , факсов, модемов и других сложных устройств приборов связи применяют также стандарт RJ-45. При подключении устройств главное внимание уделяют соответствию пластмассовых ключей.

Несмотря на конструктивные различия старых и новых стандартов, штекеры устройств обладают схожими разъемами и габаритами. Соединение прибора с сетью осуществляется только через два контакта. Только у современных моделей задействуют лишь средние контакты.

Желающим ознакомиться с особенностями подключения поможет галерея фото:

Галерея изображений

Фото из

Внешний вид накладной телефонной розетки

Телефонный патч-корд с коннектором типа RJ-12

Внутреннее устройство телефонной розетки

Схема подключения розетки с двумя разъемами

Схемы монтажа и способы подключения

Осуществить подключение телефонной розетки намного проще ее электрического аналога. Но процесс, предполагающий работу пусть с низким, но все же напряжением, требует аккуратности и осторожности.

Схема подключения телефонной розетки довольно проста и предполагает соединение двух концов телефонного провода с соответствующими контактами в розетке

При установке телефонной розетки можно применить один из двух способов монтажа:

  • открытый – предполагает установку накладным способом;
  • закрытый – при котором телефонная линия скрыта внутри стены.

При выборе способа прокладки ориентируются на конструкцию стен, условия обслуживания линии связи и претенциозность дизайна самого помещения. Накладные розетки смотрятся не очень эстетично, но зато они идеальны в скорости обслуживания: их за считанные минуты можно снять с опоры и оценить целостность контактов.

Открытый способ можно осуществить вовсе без монтажа на стене, разместив устройство на полу, а ведущий к нему кабель спрятать под плинтус

Чтобы защитить открытые провода от механических повреждений используют декоративные пластиковые кабель-каналы. В продаже они встречаются в виде настенных конструкций и напольных плинтусов. Контроль за состоянием провода в них удобно осуществлять через одно- или двух сторонние защелкивающиеся панели.

Для закрытого монтажа чаще всего используют кабель КСПВ. Единственная жила этого кабеля выполнена из медной проволоки, а внешняя оболочка – из полиэтилена, окрашенного в белый цвет.

Прокладку телефонной линии выполняют также, используя распределительный кабель ТРП. Он имеет разделительное основание. Жила этого однопарного провода также выполнена из меди и изолирована полиэтиленом.

В целях удобства эксплуатации и гармоничного сочетания с дизайном телефонные розетки не устанавливают отдельно в стене, а включают в розеточный блок

Чтобы задекорировать точки подключения и сделать их менее заметными для взгляда посторонних, устройства размещают за экранами телевизоров и мониторами, а также встраивают за фасадом настенной мебели.

Отдельной строкой стоит выделить розетки, встроенные в плинтус. Главное – выбирать модели, лицевая панель которых плотно прилегает к поверхности плинтуса. Иначе со временем она станет отходить от основы, оголяя неприглядные швы.

Порядок подключения телефонной розетки

При установке телефонной розетки следует учитывать, что напряжение для слаботочных устройств связи не превышает 60 Вольт. Но даже пониженное напряжение все же может создать ток, причиняя дискомфорт человеку.

В момент, когда происходит вызов по телефонной линии напряжение и вовсе поднимается до показателя в 110-120 Вольт. И оно способно при контакте дать серьезные болевые ощущения. До величины в 12 Вольт оно снижается лишь после снятия трубки.

Все работы по подключению действующей телефонной схемы в целях соблюдения техники безопасности рекомендуется проводить в защитных прорезиненных перчатках

Принцип размещения и способ установки телефонных розеток практически не отличается от технологии монтажа электрических розеток. Поскольку сегодня наиболее распространены устройства, имеющие стандарт J-11 и J-12, тонкости подключения телефонной розетки рассмотрим на их примере.

Этап #1: Проведение подготовительных работ

Первое, что необходимо сделать – изучить схемы внутренней коммуникации. Они прилагаются к инструкции к изделию.

При подключении стандартов J-11 и J-12 проблем возникнуть не должно: нужно лишь соединить жилы соответствующей полярности. Главное, чтобы в подходящей к аппарату вилке провода были выведены в зеркальном отражении контактов розетки.

В случае если вы по незнанию приобрели и планируете установить стандарт J-25, конструкция которого предполагает 6 контактов, для подключения задействуйте только 3-й и 4-й контакты.

По стандарту к каждому контакту подведен провод определенного цвета, такое решение повышает удобство обслуживания и облегчает ремонт

Планируя использовать аппарат старого стандарта, заранее стоит побеспокоиться о приобретении универсальной розетки. Она оснащена четырехконтактым разъемом и соединителем. Помимо самой розетки необходимо также подготовить двухжильный провод сечением 0,3-0,5 мм.

Заранее необходимо определить и наметить место и .

Из инструментов для проведения работ необходимо подготовить:

  • строительный уровень;
  • кроссировочный нож;
  • вольтметр;
  • отвертку;
  • кусачки;
  • графитный карандаш;
  • защитные перчатки;
  • двухсторонний скотч;
  • перфоратор (если монтаж новой точки).

При выборе отвертки руководствуются типом поверхности и габаритам шурупов, задействованных для крепления. Чтобы минимизировать вероятность поражения электрическим током, все манипуляции лучше выполнять отверткой, рукоять которой имеет изоляцию.

Наметив место установки точки подключения, с помощью строительного уровня корректируют горизонтальность и вертикальность его положения

Чтобы подключить розетку скрытого типа, необходимо предварительно в стене проделать отверстие под ее установку – . Сделать это можно с помощью перфоратора, оснащенного специальной коронкой диаметром 60-70 мм.

За неимением такового работу можно выполнить и обычным молотком с зубилом. Но ручной труд отнимет гораздо больше времени и сил. Затем к проделанному отверстию необходимо проштробить канал под укладку телефонного кабеля.

Определенные нюансы есть при монтаже подрозетника в .

Этап #2: Зачистка концов жил

Прежде чем приступить к расплавлению жил необходимо зачистить концы проводов, устранив внешний слой. Оголить достаточно крайние 4 см провода.

При зачистке телефонного кабеля следует помнить, что он очень уязвим к повреждениям. А переломанные жилы только приведут к неисправности оборудования. Поэтому важно использовать специализированный .

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

Снятие защитной изоляции с концов кабеля следует выполнять крайне аккуратно, используя для этого кроссировочный нож, остро заточенное лезвие или бокорезы

Задача мастера – зачистить кончики проводов от оплетки так, чтобы в оголенном виде они были целыми и лишенными всяких дефектов.

Этап #3: Подключение проводов розетки

Зачищенные провода с раздвинутыми жилами подсоединяют к разъемам самой коробки, ориентируясь на обозначения, указанные на лицевой панели внутреннего блока. При закрытом способе монтажа для удобства подключения провода делают выступающими за стеновую плоскость на 50-80 мм.

Специалисты рекомендуют при подключении проводов проверять полярность контактов, используя для этого тестер.

Чтобы соблюдать полярность при подключении проводов руководствуются правилом: красная изоляция на линии со знаком «-», а зеленая оплетка на «+»

При несоблюдении правила с учетом полярности велик риск, что в процессе работы телефонный аппарат время от времени будет давать сбои.

На этом этапе работ потребуется вольтметр. С его помощью нужно проверить готовность линии связи. Напряжение в линии должно быть в пределах 40-60 Вольт.

Подведенные кабельные жилы прикладывают к зажиму и плотно затягивают специальными винтами, обеспечивая надежную фиксацию. Форма пазов, к которым крепятся жилы, облегчает процесс монтажа. Места стыков изолентой обматывать не нужно.

При подключении устройств, конструкция которых оснащена четырьмя контактами вилочной формы, задействуют только два центральных контакта

Выполняя открытый монтаж, на завершающем этапе остается только закрыть крышку корпуса с помощью защелки и закрепить ее винтами. Готовую розетку прикрепляют к стене или полу, «сажая» ее на двухсторонний скотч.

При закрытом способе монтажа, убедившись, что провода не переплетаются в подрозетнике, согласно нанесенной разметки внутренний блок монтируют в стену. Придав блоку желаемое положение, конструкцию фиксируют с помощью распорных винтов и саморезов.

На завершающем этапе остается лишь устранить зазоры между подрозетником и стеной, замазав его гипсовым раствором, а также заделать каналы с проложенным телефонным кабелем.

После того, как гипс приобретет желаемую прочность, устанавливают на место защитную окантовку и присоединяют лицевую панель. В устройствах современного образца защитная окантовка защелкивается на внутреннем блоке, а лицевая панель крепится путем вкручивания винтов.

При необходимости подключения многоразъемной розетки, позволяющей устанавливать несколько телефонных аппаратов, необходимо придерживаться той же технологии, что и при установке классического варианта устройства. Единственное отличие процесса – увеличение количества проводников, требующих подключения.

Выводы и полезное видео по теме

Руководство по подключению устройства:

Замена старой розетки с совмещенным разъемом РТШК-4 и RG-11 на аналогичное новое устройство:

Ничего сложно в подключении телефонной розетки нет. Единственное – не стоит экономить, приобретая оборудование низкого ценового диапазона. Оно не всегда соответствует нормам и способно выйти из строя еще на стадии подключения.

Делитесь личным опытом подключения телефонной розетки, оставляйте комментарии к статье и задавайте вопросы. Форма для связи расположена ниже.

ios - Невозможно создать розетку с кнопкой панели

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Как подключить телефон напрямую к цифровому телефонному терминалу

Узнайте, как подключить телефон напрямую к цифровому телефонному терминалу. В случае потери тонального сигнала ответа станции на домашнем телефоне может потребоваться подключить один из ваших телефонов непосредственно к цифровому телефонному терминалу Shaw или DPT. В тех случаях, когда цифровой телефонный терминал подключен к сети, но вы не можете получить доступ к тональному сигналу, подключение телефона напрямую к вашему цифровому телефонному терминалу позволит обойти внутреннюю телефонную проводку вашего дома и позволит вам протестировать телефонную службу в ее источнике. , сам терминал цифрового телефона.

Эта статья даст представление о:

Как подключиться к цифровому телефонному терминалу

В этом руководстве объясняется, как отключить телефон от основной телефонной линии и подключить его напрямую к терминалу цифрового телефона.

  1. Отключите один из домашних телефонов от розетки и поместите его рядом с цифровым телефонным терминалом (DPT)
  2. На задней панели цифрового телефонного терминала найдите телефонный кабель.Это будет единственный кабель с защелкой (обычно из прозрачного пластика), который будет подключен к порту с маркировкой TEL1 / 2 .
  3. Нажмите на язычок и выньте этот кабель из порта.
  4. Подключите домашний телефон напрямую к пустому порту TEL1 / 2 на задней панели цифрового телефонного терминала.
  5. Проверить этот единственный телефон на наличие гудка. Если присутствует гудок, вы успешно обошли проблему с внутренней проводкой в ​​вашем доме.
    • Если вы восстановили гудок на одном из своих телефонов с помощью этого метода, это указывает на проблему с проводкой в ​​вашем доме. Обратитесь к представителю службы технической поддержки Shaw для получения дополнительной помощи в решении проблемы с электропроводкой в ​​вашем доме. Свяжитесь с нами
  6. Если после прямого подключения к цифровому телефонному терминалу на этом телефоне отсутствует тональный сигнал ответа станции, внутренняя проводка исправна, и цифровой телефонный терминал, возможно, требует сброса.Пожалуйста, обратитесь к этому руководству: Как выполнить сброс через отверстие на цифровом телефонном терминале, чтобы выполнить сброс через отверстие.
    • Если вы по-прежнему не слышите гудок после выполнения вышеуказанного, обратитесь к агенту технической поддержки Shaw за дополнительной помощью. Свяжитесь с нами

Вернуться к началу

Как определить порты Tel 1/2 вашего ЦСТ

Чтобы подключить телефон напрямую к цифровому телефонному терминалу, вам необходимо идентифицировать порт Tel 1/2 на задней панели устройства.

Подключение телефона к цифровому телефонному терминалу

Телефонные порты Arris TM602

Motorola SBV5220

Вернуться к началу

Статьи по теме

.

Подключить пользовательский интерфейс к коду

В этом уроке вы подключите основной пользовательский интерфейс (UI) приложения FoodTracker к коду и определите некоторые действия, которые пользователь может выполнять в этом пользовательском интерфейсе.

Цели обучения

По окончании урока вы сможете:

  • Объясните взаимосвязь между сценой в раскадровке и базовым контроллером представления.

  • Создание связей между выходами и действиями между элементами пользовательского интерфейса в раскадровке и исходном коде

  • Обработка пользовательского ввода из текстового поля и отображение результата в пользовательском интерфейсе

  • Сделать класс соответствующим протоколу

  • Понять схему делегирования

  • Следуйте шаблону целевого действия при разработке архитектуры приложения

Подключение пользовательского интерфейса к исходному коду

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

В раскадровке сцена представляет один экран содержимого и обычно один контроллер представления. Контроллеры представления реализуют поведение вашего приложения. Контроллер представления управляет одним представлением содержимого с его иерархией подпредставлений. Контроллеры представлений координируют поток информации между моделью данных приложения, которая инкапсулирует данные приложения, и представлениями, которые отображают эти данные, управляют жизненным циклом своих представлений содержимого, обрабатывают изменения ориентации при повороте устройства, определяют навигацию внутри вашего app и реализовать поведение для ответа на ввод пользователя.Все объекты контроллера представления в iOS имеют тип UIViewController или один из его подклассов.

Вы определяете поведение своих контроллеров представления в коде, создавая и реализуя подклассы настраиваемых контроллеров представления. Затем вы можете создать связь между этими классами и сценами в раскадровке, чтобы получить поведение, которое вы определили в коде, и пользовательский интерфейс, который вы определили в своей раскадровке.

Xcode уже создал один такой класс, на который вы смотрели ранее, ViewController.swift и подключил его к сцене, над которой вы сейчас работаете в раскадровке. В будущем, когда вы добавите новые сцены, вы сами установите это соединение в Инспекторе идентичности. Инспектор идентичности позволяет редактировать свойства объекта в раскадровке, связанные с идентичностью этого объекта, например, к какому классу принадлежит объект.

Во время выполнения ваша раскадровка создает экземпляр ViewController , вашего подкласса настраиваемого контроллера представления. Сцена из вашей раскадровки появляется на экране устройства, а поведение пользовательского интерфейса определяется в ViewController.Свифт .

Хотя сцена подключена к ViewController.swift , это не единственное подключение, которое необходимо установить. Чтобы определить взаимодействие в вашем приложении, исходный код вашего контроллера представления должен иметь возможность взаимодействовать с представлениями в вашей раскадровке. Это достигается путем определения дополнительных соединений, называемых выходами и действиями, между представлениями в раскадровке и файлами исходного кода контроллера представления.

Создание выходов для элементов пользовательского интерфейса

Выходы предоставляют способ ссылаться на объекты интерфейса - объекты, добавленные в раскадровку, - из файлов исходного кода.Чтобы создать выход, перетащите, удерживая клавишу Control, от определенного объекта в раскадровке к файлу контроллера представления. Эта операция создает свойство для объекта в вашем файле контроллера представления, которое позволяет вам получать доступ к этому объекту и управлять им из кода во время выполнения.

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

Для подключения текстового поля к ViewController.swift с кодом

  1. Откройте свою раскадровку, Main.раскадровка .

  2. Нажмите кнопку «Ассистент» на панели инструментов Xcode в правом верхнем углу Xcode, чтобы открыть редактор помощника.

  3. Если вам нужно больше места для работы, сверните навигатор проекта и область служебных программ, щелкнув кнопки Navigator и Utilities на панели инструментов Xcode.

    Вы также можете свернуть вид структуры.

  4. На панели выбора редактора, которая появляется в верхней части помощника редактора, измените помощник редактора с предварительного просмотра на автоматический> ViewController.Свифт .

    ViewController.swift отображается в редакторе справа.

  5. В ViewController.swift найдите строку class , которая должна выглядеть так:

    1. класс ViewController: UIViewController {
  6. Под строкой class добавьте следующее:

    Вы только что добавили комментарий к исходному коду.Напомним, что комментарий - это фрагмент текста в файле исходного кода, который не компилируется как часть программы, но предоставляет контекст или полезную информацию об отдельных фрагментах кода.

    Комментарий, начинающийся с символов // MARK: , - это особый тип комментария, который используется для организации вашего кода и помогает вам (и всем, кто читает ваш код) перемещаться по нему. Позже вы увидите это в действии. В частности, добавленный вами комментарий указывает на то, что это раздел вашего кода, в котором перечислены свойства.

  7. В раскадровке выберите текстовое поле.

  8. Удерживая нажатой клавишу Control, перетащите из текстового поля на холсте к отображению кода в редакторе справа, остановив перетаскивание в строке под комментарием, который вы только что добавили в ViewController.swift .

  9. В появившемся диалоговом окне в поле «Имя» введите nameTextField . Остальные параметры оставьте как есть.

  10. Щелкните Подключиться.

    Xcode добавляет необходимый код в ViewController.swift для хранения ссылки на текстовое поле и настраивает раскадровку для установки этого соединения.

    1. @IBOutlet weak var nameTextField: UITextField!

Найдите минутку, чтобы понять, что происходит в этой строке кода.

Атрибут IBOutlet сообщает Xcode, что вы можете подключиться к свойству nameTextField из Interface Builder (вот почему атрибут имеет префикс IB ).Ключевое слово weak указывает, что ссылка не мешает системе освободить указанный объект. Слабые ссылки помогают предотвратить циклы ссылок; однако, чтобы объект оставался живым и находился в памяти, вам нужно убедиться, что какая-то другая часть вашего приложения имеет сильную ссылку на объект. В данном случае это супервизор текстового поля. Суперпредставление поддерживает сильную ссылку на все свои подвиды. Пока супервизор остается живым и находится в памяти, все субпредставления также остаются живыми.Точно так же контроллер представления имеет сильную ссылку на свое представление содержимого - поддерживая всю иерархию представлений в памяти и в действии.

Остальная часть объявления определяет неявно развернутую необязательную переменную типа UITextField с именем nameTextField . Обратите особое внимание на восклицательный знак в конце объявления типа. Этот восклицательный знак указывает на то, что тип является неявно развернутым необязательным типом, который является необязательным типом, который всегда будет иметь значение после его первой установки.Когда вы обращаетесь к неявно развернутому необязательному элементу, система предполагает, что он имеет допустимое значение, и автоматически развертывает его для вас. Обратите внимание, что это приводит к завершению работы приложения, если значение переменной еще не было установлено.

Когда контроллер представления загружается из раскадровки, система создает экземпляр иерархии представления и присваивает соответствующие значения всем выходам контроллера представления. К моменту вызова метода viewDidLoad () контроллера представления система назначила допустимые значения всем выходам контроллера, и вы можете безопасно получить доступ к их содержимому.

Теперь подключите метку к вашему коду так же, как вы подключили текстовое поле.

Для подключения метки к ViewController.swift код

  1. В раскадровке выберите метку.

  2. Удерживая нажатой клавишу Control, перетащите от метки на холсте к отображению кода в редакторе справа, остановив перетаскивание в строке сразу под свойством nameTextField в ViewController.swift .

  3. В появившемся диалоговом окне в поле Имя введите foodNameLabel .Остальные параметры оставьте как есть.

  4. Щелкните Подключиться.

Опять же, Xcode добавляет необходимый код в ViewController.swift для хранения ссылки на метку и настраивает раскадровку для установки этого соединения. Этот выход похож на текстовое поле, за исключением своего имени и типа (это UILabel , чтобы соответствовать типу объекта в раскадровке).

  1. @IBOutlet weak var foodNameLabel: UILabel!

Выход к объекту интерфейса нужен только в том случае, если вы планируете получить доступ к значению из объекта интерфейса или изменить объект интерфейса в коде.В этом случае необходимо установить свойство делегата текстового поля и свойство текст ярлыка. Вы не будете изменять кнопку, поэтому нет причин создавать для нее розетку.

Выходы позволяют ссылаться на элементы интерфейса в коде, но вам все равно нужен способ реагировать всякий раз, когда пользователь взаимодействует с элементами. Вот тут-то и нужны действия.

Определите действие, которое необходимо выполнить

Приложения для iOS основаны на программировании, управляемом событиями.То есть поток приложения определяется событиями: системными событиями и действиями пользователя. Пользователь выполняет действия в интерфейсе, которые запускают события в приложении. Эти события приводят к выполнению логики приложения и манипулированию его данными. Затем реакция приложения на действие пользователя отражается в пользовательском интерфейсе. Поскольку пользователь, а не разработчик, контролирует выполнение определенных частей кода приложения, вы хотите точно определить, какие действия может выполнять пользователь и что происходит в ответ на эти действия.

Действие (или метод действия) - это фрагмент кода, связанный с событием, которое может произойти в вашем приложении. Когда это событие происходит, система выполняет код действия. Вы можете определить метод действия для выполнения чего угодно - от управления фрагментом данных до обновления пользовательского интерфейса. Вы используете действия, чтобы управлять потоком вашего приложения в ответ на пользовательские или системные события.

Вы создаете действие так же, как создаете розетку: удерживая нажатой клавишу Control, перетащите из определенного объекта в раскадровке в файл контроллера представления.Эта операция создает метод в вашем файле контроллера представления, который запускается, когда пользователь взаимодействует с объектом, к которому прикреплен метод действия.

Начните с создания простого действия, которое устанавливает для метки значение Default Text всякий раз, когда пользователь нажимает кнопку Set Default Text. (Код для установки метки для текста в текстовом поле немного сложнее, поэтому вы напишете его в разделе «Обработка пользовательского ввода».)

Чтобы создать действие setDefaultLabelText в ViewController.быстрый код

  1. В ViewController.swift , чуть выше последней фигурной скобки (} ), добавьте следующее:

    Этот комментарий указывает на то, что это часть вашего кода, в которой перечислены действия.

  2. В раскадровке нажмите кнопку «Установить текст метки по умолчанию».

  3. Удерживая нажатой клавишу «Control», перетащите кнопку «Установить текст метки по умолчанию» на холсте к отображению кода в редакторе справа, остановив перетаскивание в строке под комментарием, который вы только что добавили в ViewController.Свифт .

  4. В появившемся диалоговом окне для Connection выберите Action.

  5. В поле Имя введите setDefaultLabelText .

  6. В поле Тип выберите UIButton .

    Вы могли заметить, что значение поля Тип по умолчанию - AnyObject . В Swift AnyObject - это тип, используемый для описания объекта, который может принадлежать любому классу. Определение типа этого метода действия как UIButton означает, что только объекты кнопок могут подключаться к этому действию.Хотя это несущественно для действия, которое вы создаете сейчас, важно помнить об этом на потом.

    Остальные параметры оставьте как есть.

  7. Щелкните Подключиться.

Xcode добавляет необходимый код в ViewController.swift для настройки метода действия.

  1. @IBAction func setDefaultLabelText (_ отправитель: UIButton) {
  2. }

Параметр отправителя относится к объекту, который был ответственен за запуск действия - в данном случае к кнопке.Атрибут IBAction указывает, что метод - это действие, к которому можно подключиться из раскадровки в Интерфейсном Разработчике. Остальная часть объявления объявляет метод с именем setDefaultLabelText (_ :) .

Сейчас объявление метода пусто. Код для сброса значения метки довольно прост.

Для реализации действия сброса метки в коде ViewController

  1. В ViewController.swift найдите метод действия setDefaultLabelText , который вы только что добавили.

  2. В реализации метода между фигурными скобками ( {} ) добавьте следующую строку кода:

    1. foodNameLabel.text = "Текст по умолчанию"

    Как вы могли догадаться, этот код устанавливает для свойства текст метки значение Текст по умолчанию.

    Обратите внимание, что вам не нужно указывать тип текста по умолчанию, потому что вывод типа Swift может видеть, что вы назначаете что-то типа String , и может правильно вывести тип.

iOS обрабатывает весь код перерисовки за вас, так что это фактически весь код, который вам сейчас нужно написать. Ваш метод действия setDefaultLabelText (_ :) должен выглядеть так:

  1. @IBAction func setDefaultLabelText (_ отправитель: UIButton) {
  2. foodNameLabel.text = "Текст по умолчанию"
  3. }

Контрольная точка: Проверьте свои изменения, запустив симулятор.Когда вы нажимаете кнопку «Установить текст метки по умолчанию», вызывается ваш метод setDefaultLabelText (_ :) , и значение текста объекта еды foodNameLabel изменяется с Meal Name (значение, установленное в раскадровке) на Default Text (значение, заданное действием). Вы должны увидеть изменения в своем пользовательском интерфейсе.

Хотя изменение названия блюда на «Текст по умолчанию» не особо полезно, оно иллюстрирует важный момент. Только что реализованное поведение является примером шаблона целевого действия в дизайне приложения для iOS.Целевое действие - это шаблон проектирования, при котором один объект отправляет сообщение другому объекту при наступлении определенного события.

В этом случае:

  • Событие - это нажатие пользователем кнопки «Установить текст по умолчанию».

  • Действие: setDefaultLabelText (_) .

  • Целевой объект - ViewController (где определен метод действия).

  • Отправителем является кнопка «Установить текст метки по умолчанию».

Система отправляет сообщение, вызывая метод действия для цели и передавая объект отправителя. Отправителем обычно является элемент управления, например кнопка, ползунок или переключатель, который может запускать событие в ответ на взаимодействие с пользователем, такое как касание, перетаскивание или изменение значения. Этот паттерн очень распространен в программировании приложений для iOS, и на уроках вы встретите его гораздо чаще.

Процесс пользовательского ввода

На этом этапе пользователи могут сбросить метку названия еды до значения по умолчанию, но вы действительно хотите, чтобы пользователи вводили свои собственные названия еды, используя текстовое поле.Чтобы не усложнять задачу, вы обновите значение text объекта foodNameLabel всякий раз, когда пользователь вводит текст в текстовое поле и нажимает Return.

Когда вы работаете с принятием пользовательского ввода из текстового поля, вам нужна помощь от делегата текстового поля. Делегат - это объект, который действует от имени или в координации с другим объектом. Объект делегирования - в данном случае текстовое поле - сохраняет ссылку на другой объект - делегата - и в соответствующее время объект делегирования отправляет сообщение делегату.Сообщение сообщает делегату о событии, которое делегирующий объект собирается обработать или только что обработал. Делегат может ответить, например, обновив внешний вид или состояние себя или других объектов в приложении, или вернув значение, которое влияет на то, как обрабатывается надвигающееся событие.

Делегат текстового поля взаимодействует с текстовым полем, пока пользователь редактирует текст, и знает, когда происходят важные события, например, когда пользователь начинает или прекращает редактирование текста. Делегат может использовать эту информацию для сохранения или очистки данных в нужный момент, отключения клавиатуры и т. Д.

Любой объект может выступать в роли делегата для другого объекта, если он соответствует соответствующему протоколу. Протокол, определяющий делегата текстового поля, называется UITextFieldDelegate . Очень часто контроллер представления становится делегатом для объектов, которыми он управляет. В этом случае вы сделаете свой экземпляр ViewController делегатом текстового поля.

Во-первых, ViewController должен принять протокол UITextFieldDelegate .Вы принимаете протокол, перечисляя его как часть строки объявления класса.

Принять протокол UITextFieldDelegate

  1. Если помощник редактора открыт, вернитесь в стандартный редактор, нажав кнопку Стандартный.

  2. Разверните навигатор проекта и область служебных программ, щелкнув кнопки Navigator и Utilities на панели инструментов Xcode.

  3. В навигаторе проекта выберите ViewController.Свифт .

  4. В ViewController.swift найдите строку class , которая должна выглядеть так:

    1. класс ViewController: UIViewController {
  5. После UIViewController добавьте запятую (, ) и UITextFieldDelegate , чтобы принять протокол.

    1. класс ViewController: UIViewController, UITextFieldDelegate {

Приняв протокол UITextFieldDelegate , вы сообщаете компилятору, что класс ViewController может действовать как действительный делегат текстового поля.Это означает, что вы можете реализовать методы протокола для обработки ввода текста и назначить экземпляры класса ViewController в качестве делегата текстового поля.

Чтобы установить объект ViewController в качестве делегата его свойства nameTextField

  1. В ViewController.swift найдите метод viewDidLoad () , который должен выглядеть так:

    1. функция отмены viewDidLoad () {
    2. супер.viewDidLoad ()
    3. // Выполните какие-либо дополнительные настройки после загрузки представления, обычно из пера.
    4. }

    Реализация этого метода в шаблоне включает комментарий. Вам не нужен этот комментарий в реализации вашего метода, поэтому удалите его.

  2. Под строкой super.viewDidLoad () добавьте пустую строку и следующее:

    1. // Обработка пользовательского ввода текстового поля через обратные вызовы делегатов.
    2. nameTextField.delegate = self

    self относится к классу ViewController , потому что ссылка на него находится внутри области определения класса ViewController .

    Вы можете добавлять свои собственные комментарии, чтобы понять, что происходит в вашем коде.

Ваш метод viewDidLoad () должен выглядеть так:

  1. функция отмены viewDidLoad () {
  2. супер.viewDidLoad ()
  3. // Обработка пользовательского ввода текстового поля через обратные вызовы делегатов.
  4. nameTextField.delegate = self
  5. }

Когда экземпляр ViewController загружается, он устанавливает себя в качестве делегата своего свойства nameTextField .

Протокол UITextFieldDelegate определяет восемь дополнительных методов.Просто реализуйте те, которые вам нужны, чтобы добиться желаемого поведения. На данный момент вам нужно реализовать два из этих методов:

  1. func textFieldShouldReturn (_ textField: UITextField) -> Bool
  2. func textFieldDidEndEditing (_ textField: UITextField)

Чтобы понять, когда вызываются эти методы и что они должны делать, важно знать, как текстовые поля реагируют на пользовательские события. Когда пользователь касается текстового поля, он автоматически становится первым респондентом.В приложении первый респондент - это объект, который первым на линии принимает многие виды событий приложения, включая ключевые события, события движения и сообщения действий, среди прочего. Другими словами, многие события, генерируемые пользователем, первоначально направляются первому респонденту.

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

Когда пользователь хочет завершить редактирование текстового поля, текстовое поле должно отказаться от своего статуса первого респондента. Поскольку текстовое поле больше не будет активным объектом в приложении, события необходимо перенаправлять на более подходящий объект.

Здесь вступает в силу ваша реализация методов UITextFieldDelegate . Вам необходимо указать, что текстовое поле должно отказаться от своего статуса первого респондента, когда пользователь нажимает кнопку для завершения редактирования в текстовом поле.Вы делаете это в методе textFieldShouldReturn (_ :) , который вызывается, когда пользователь нажимает Return (или, в данном случае, Done) на клавиатуре.

Для реализации метода протокола UITextFieldDelegate textFieldShouldReturn (_ :)

  1. В ViewController.swift , прямо над разделом // MARK: Actions , добавьте следующее:

    1. // МАРКА: UITextFieldDelegate

    Этот комментарий используется для организации вашего кода и помощи вам (и всем, кто читает ваш код) в навигации по нему.

    Вы уже добавили несколько таких комментариев. Xcode перечисляет каждый из этих комментариев как заголовок раздела в меню функций файла исходного кода, которое появляется, если вы щелкаете имя файла в верхней части области редактора. Меню функций позволяет быстро перейти к разделу кода. Вы увидите разделы, обозначенные вами как // MARK: , перечисленные здесь. Вы можете нажать на один из заголовков раздела, чтобы перейти к этому разделу в файле.

  2. Под комментарием добавьте следующий метод:

    1. func textFieldShouldReturn (_ textField: UITextField) -> Bool {
    2. }
  3. В этом методе добавьте следующий код, чтобы отказаться от статуса первого респондента текстового поля, и комментарий, чтобы описать, что делает код:

    1. // Скрыть клавиатуру.
    2. textField.resignFirstResponder ()

    Попробуйте ввести вторую строку вместо простого копирования и вставки. Вы обнаружите, что автозавершение кода - одна из замечательных функций Xcode, экономящих время. Когда Xcode отобразит список возможных завершений, прокрутите список, пока не найдете тот, который вам нужен, а затем нажмите Return. Xcode вставляет за вас всю строку.

  4. В этом методе добавьте следующую строку кода:

    Этот метод возвращает логическое значение, которое указывает, должна ли система обрабатывать нажатие клавиши Return.В этом случае вы всегда хотите ответить пользователю, нажав клавишу Return, поэтому просто верните true .

Ваш метод textFieldShouldReturn (_ :) должен выглядеть так:

  1. func textFieldShouldReturn (_ textField: UITextField) -> Bool {
  2. // Скрыть клавиатуру.
  3. textField.resignFirstResponder ()
  4. возврат верно
  5. }

Второй метод, который вам нужно реализовать, textFieldDidEndEditing (_ :) , вызывается после того, как текстовое поле отказывается от своего статуса первого респондента.Поскольку вы отказываетесь от статуса первого респондента в textFieldShouldReturn , система вызывает этот метод сразу после вызова textFieldShouldReturn .

Метод textFieldDidEndEditing (_ :) дает вам возможность прочитать информацию, введенную в текстовое поле, и что-то с ней сделать. В вашем случае вы возьмете текст, который находится в текстовом поле, и воспользуетесь им для изменения значения вашего ярлыка.

Для реализации метода протокола UITextFieldDelegate textFieldDidEndEditing (_ :)

  1. В ViewController.swift , после метода textFieldShouldReturn (_ :) добавьте следующий метод:

    1. func textFieldDidEndEditing (_ textField: UITextField) {
    2. }
  2. В этом методе добавьте следующую строку кода:

    1. foodNameLabel.text = textField.text

Это все, что вам нужно сделать, чтобы увидеть результат.Ваш метод textFieldDidEndEditing (_ :) должен выглядеть так:

  1. func textFieldDidEndEditing (_ textField: UITextField) {
  2. foodNameLabel.text = textField.text
  3. }

Контрольная точка: Проверьте свои изменения, запустив симулятор. Вы можете выбрать текстовое поле и ввести в него текст. Когда вы нажимаете кнопку «Готово» на клавиатуре, клавиатура закрывается, и текст метки изменяется, отображая текст в текстовом поле.Когда вы нажимаете кнопку «Установить текст метки по умолчанию», метка меняется с того, что в настоящее время отображается в метке, на Текст по умолчанию (значение, установленное действием, которое вы определили ранее).

Заключение

На этом уроке вы использовали помощник редактора, чтобы добавить выходы и действия в исходный код. Вы также добавили код для обновления пользовательского интерфейса при взаимодействии пользователя с элементами управления. Проект по-прежнему представляет собой относительно простую одиночную сцену, но вы продолжите добавлять функции и увеличивать его сложность в течение оставшихся уроков.

Примечание

Чтобы увидеть завершенный пример проекта для этого урока, загрузите файл и просмотрите его в Xcode.

Загрузка файла

.

ios - как подключить веб-представление в раскадровке к розетке в Xcode 5?

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Смотрите также