1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/zhuchaowe-EasyIOS-Swift

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 7.8 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 29.11.2024 09:42 c9689ef

EasyIOS For Swift

Version License Platform qq

Star is the Best Way to Support EasyIOS !

Видео демо

ScreenShot

Особенности

  • MVVM: Model-View-ViewModel, вдохновлённый функциональным реактивным программированием.
  • HTML в нативный: преобразование HTML и CSS в нативные элементы управления.
  • DataBinding: можно использовать SwiftBond для привязки данных через Swift и EZViewModel для привязки данных через HTML, например, {{title}}.
  • Отражение Cocoa Touch: отражение всех API Cocoa Touch, можно использовать API Cocoa Touch через HTML.
  • AutoLayout: HTML-макет основан на AutoLayout.
  • Live Load: редактирование HTML и вид в симуляторе будут обновляться автоматически без перестройки приложения.
  • Криптографический HTML: чтобы сделать HTML безопасным, мы предоставляем AES Encryption для шифрования HTML.
  • URLManager: переход или представление контроллера по пользовательскому URL.
  • Элегантное PullToRefresh: добавление PullToRefresh или InfiniteScrolling с помощью HTML.

HTML в нативный

  • UITableView с PullReflash
    • align, margin для управления AutoLayout UIView.
    • pull-to-refresh="handlePullRefresh.", infinite-scrolling="handleInfinite. PullFooter" для добавления PullRefresh или InfiniteScrolling.
    • handlePullRefresh. обрабатывает событие с помощью func handlePullRefresh (tableView:UITableView), вы можете определить его самостоятельно.
    • PullFooter может загружать пользовательский PullReflashView.
<body>
    <div id="tableview" align="64 0 0 0" content-inset="{0,0,0,0}" type="UITableView"  estimated-row-height="100"  separator-style="None" pull-to-refresh="handlePullRefresh." infinite-scrolling="handleInfinite. PullFooter">
        <div align="0 0 0 0" type="cell" id="cell" >
            <img id="avatar" align="10 10 -10 *" clips-to-bounds="YES" width="45" height="45" layer_corner-radius="5" src="{{srcUrl}}" />
            <span align="top:2 avatar;right:-10" margin="left:12 avatar"  font="15 system" id="title">{{title}}</span>
            <span align="bottom:0 avatar;right:-10" margin="left:12 avatar" font="13 system" text-color="#ACACAC" id="subTitle" style="color:#ACACAC;" link-style="color:green;" >{{subTitle}}</span>
        </div>
        <div type="section" id="bgView" background-color="#F2F1F6" >
            <span align="left:15;center-y:0" font="14 system">{{title}}</span>
        </div>
    </div>
</body>
  • UIScrollView с CSS
    • Используйте CSS с помощью @ для примера @contentAlign.
<style>
    .contentAlign{
    edge:0 0 0 0;left:0 root;right:0 root;
    }
    .inputStyle{
    font-size:15;color:#999999;
    }
</style>
<body>
    <div align="0 0 0 0" type="UIScrollView" background-color="#F3F3F3">
        <div align="@contentAlign">
            <img id="logo" image="login-logo" user-interaction-enabled="YES" present="demo://login" align="center-x:0;top:110;"/>
            <div id="username" layer_corner-radius="8" background-color="white" align="* 15 * -15" margin="top:30 logo" height="45">
                <input class="userTextField" id="userTextField"

*Здесь приведён перевод текста запроса.* **HTML Label и повторно используемый HTML**

* `@import(LabelHtml)` для импорта `LabelHtml.xml`.

Когда для тега span установлено значение `style="color:#ACACAC;font-size:18px;"`, можно использовать исходный HTML внутри тега span.

```HTML
<style>
    <!-- Поддержка CSS-стилей, в HTML используется @ для вызова -->
    .contentAlign {
        edge: 0 0 0 0; left: 0 root; right: 0 root;
    }
</style>

<body>
    <div align="0 0 0 0" type="UIScrollView" background-color="#F3F3F3">
        <div align="@contentAlign">
            <!-- В теге span установлен атрибут style, поэтому включён режим форматированного текста, внутри span можно использовать все атрибуты исходного HTML, см. файл LabelHtml.xml -->
            <span align="64 0 0 0" style="color:#ACACAC; font-size:18px;">
                <!-- Импорт файла -->
                @import(LabelHtml)
            </span>
        </div>
    </div>
</body>

UICollectionView с FlowLayout

<body>
    <div id="collectionView" align="0 0 0 0" type="UICollectionView" flow-layout="scroll-direction:Vertical; item-size:{300,50}; section-inset:{3,3,0,3}; minimum-interitem-spacing:3; minimum-line-spacing:3" content-inset="{64,0,0,0}" background-color="white" pull-to-refresh="handlePullRefresh." infinite-scrolling="handleInfinite.">
        <div align="0 0 0 0" type="cell" id="cell" background-color="red">
            <span align="10 10 -10 -10" font="10 system">{{name}}</span>
        </div>
    </div>
</body>

MVVM

MVVM основан на Swift-фреймворке привязки SwiftBond.

Bond — это фреймворк привязки Swift, который поднимает концепцию привязки на совершенно новый уровень — сводит её к одному оператору. Он простой, мощный, типобезопасный и мультипарадигмальный — как Swift.

EasyCoreData(1.0.1)

Использование

Чтобы запустить пример проекта, сначала клонируйте репозиторий и запустите pod install из каталога Demo.

Требования

  • Swift
  • IOS8

Установка

EasyIOS-Swift доступен через CocoaPods. Чтобы установить его, просто добавьте следующую строку в свой Podfile:

platform :ios, '8.0'
use_frameworks!
pod "EasyIOS-Swift"

Импортируйте EasyIOS:

import EasyIOS

Автор

Чжу Чао, zhuchao@iosx.me

Лицензия

EasyIOS-Swift доступна по лицензии MIT. Дополнительную информацию см. в файле LICENSE.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/zhuchaowe-EasyIOS-Swift.git
git@api.gitlife.ru:oschina-mirror/zhuchaowe-EasyIOS-Swift.git
oschina-mirror
zhuchaowe-EasyIOS-Swift
zhuchaowe-EasyIOS-Swift
master