Как насчет того, чтобы позволить компьютеру выполнять работу компьютера?
Быстрее, меньше риск ошибок.
Вот рабочий процесс, основанный на превосходном ответе от Jag , но автоматизированный с помощью sed.
Сначала давайте настроим некоторые вещи. Нам нужно будет сделать это только один раз.
В каталоге, содержащем ваши XIB, создайте два файла со следующим содержимым:
Файл iPhoneToiPadXIBConversion.sed
:
s/com.apple.InterfaceBuilder3.CocoaTouch.XIB/com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB/g
s/IBCocoaTouchFramework/IBIPadFramework/g
и файл iPadToiPhoneXIBConversion.sed
:
s/com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB/com.apple.InterfaceBuilder3.CocoaTouch.XIB/g
s/IBIPadFramework/IBCocoaTouchFramework/g
Настройка завершена.
Чтобы преобразовать XIB, введите в терминал одну из двух следующих команд:
Преобразование iPhone в iPad:
sed -f iPhoneToiPadXIBConversion.sed MyViewController~iphone.xib > MyViewController.xib
Преобразование iPad в iPhone:
sed -f iPadToiPhoneXIBConversion.sed MyViewController.xib > MyViewController~iphone.xib
Просто для удовольствия, давайте создадим две функции в zsh, чтобы сделать преобразование еще более простым:
function convertiPadXIBToiPhone () {
newXibName=`echo "$1" | /usr/bin/sed "s/.xib/~iphone.xib/"`
`/usr/bin/sed -f iPadToiPhoneXIBConversion.sed "$1" > "$newXibName"`
echo "Did convert $1 to $newXibName."
}
function convertiPhoneXIBToiPad () {
newXibName=`echo "$1" | /usr/bin/sed "s/~iphone.xib/.xib/"`
`/usr/bin/sed -f iPhoneToiPadXIBConversion.sed "$1" > "$newXibName"`
echo "Did convert $1 to $newXibName."
}
После добавления этого в конфигурацию zsh преобразование XIB выполняется просто:
convertiPadXIBToiPhone MyViewController.xib
или
convertiPhoneXIBToiPad MyViewController.xib