Bangun pengalaman lintas platform yang murni asli dengan Boden
Situs Web ⬡ Memulai ⬡ Referensi API ⬡ Panduan ⬡ Twitter ⬡ MasukanCatatan: Ini adalah rilis beta. Boden API belum sepenuhnya lengkap dan stabil.
Di Mac : macOS 10.14+, Xcode 10.1+, Python 3.4+, CMake 3.15.0+.
Di Windows : Windows 10, Python 3.4+, CMake 3.10.2+, Ninja, Git, Oracle JDK 8, dan Android Studio (dengan Android NDK, lihat petunjuk instalasi untuk detail lebih lanjut).
Di Ubuntu 18.04 : sudo apt update && sudo apt install git cmake ninja-build python python3-distutils openjdk-8-jdk qemu-kvm
plus Android Studio (dengan Android NDK, lihat petunjuk instalasi untuk detail lebih lanjut).
git clone --recurse-submodules https://github.com/AshampooSystems/boden.git
cd boden
python boden.py open -t bodendemo
Ini akan memunculkan Xcode di macOS atau Android Studio di Linux/Windows.
Jika ada yang tidak beres, pastikan semua dependensi telah diinstal dan diatur dengan benar. Lihat panduan lengkap kami untuk mendapatkan bantuan:
Di Xcode, pilih target bodendemo
dan tekan Cmd + R .
Di Android Studio, pilih target bodendemo
dan tekan Shift + F10 .
Untuk membuat aplikasi Boden pertama Anda, buka terminal (atau command prompt), ubah ke direktori boden
lokal Anda, dan jalankan perintah berikut:
python boden.py new -n AwesomeApp
cd AwesomeApp
python ../boden.py open
Ini akan membuat folder baru bernama AwesomeApp
dan menghasilkan file sumber dan proyek untuk aplikasi lintas platform Hello World yang sederhana. Perintah terakhir akan mempersiapkan dan membuka proyek Xcode di Mac atau proyek Android Studio di Linux/Windows.
Di Xcode, pilih target AwesomeApp
lalu tekan Cmd + R untuk membangun dan menjalankan aplikasi Hello World.
Di Android Studio, tunggu hingga Gradle menyelesaikan proses sinkronisasi dan konfigurasinya lalu pilih target bodendemo
dan tekan Cmd + R untuk membuat dan menjalankan aplikasi contoh, lalu pilih target AwesomeApp
lalu tekan Ctrl + R di Mac atau Shift + F10 di Linux/Windows untuk menjalankan aplikasi Hello World.
Catatan: Di macOS dan Linux Anda juga cukup mengetik
./boden
alih-alih memanggilpython boden.py
secara eksplisit. Jika Anda ingin membuat aplikasi versi Android di macOS, jalankan../boden open -p android
.
Berikut sekilas kode sumber yang dihasilkan oleh perintah boden new
:
// MainViewController.cpp
# include < bdn/ui.h >
# include < bdn/ui/yoga.h >
# include " MainViewController.h "
using namespace bdn ;
using namespace bdn ::ui ;
MainViewController::MainViewController ()
{
_window = std::make_shared<Window>();
_window-> title = " AwesomeApp " ;
_window-> geometry = Rect { 0 , 0 , 400 , 300 };
_window-> setLayout (std::make_shared<yoga::Layout>());
auto button = std::make_shared< Button >();
button-> label = " Hello World " ;
_window-> contentView = button;
_window-> visible = true ;
}
MainViewController.cpp
adalah bagian paling menarik dari sumber yang dihasilkan untuk aplikasi Hello World. Pengontrol tampilan utama akan dipakai saat peluncuran aplikasi. Ini bertanggung jawab untuk mengatur antarmuka pengguna aplikasi.
Inilah yang dilakukan kode secara detail:
Pertama, buat Window
baru dan atur judulnya menjadi AwesomeApp
:
_window = std::make_shared<Window>();
_window->title = " AwesomeApp " ;
Untuk mendapatkan tata letak otomatis, gunakan yogalayout::Layout
dan atur ukuran jendela default:
_window->geometry = Rect { 0 , 0 , 400 , 300 };
_window-> setLayout (std::make_shared<yoga::Layout>());
Kemudian, buat instance Button
baru dan atur labelnya menjadi "Hello World":
auto button = std::make_shared<Button>();
button->label = " Hello World " ;
Karena tombol adalah satu-satunya kontrol yang akan ditampilkan dalam contoh ini, atur tombol tersebut sebagai tampilan konten jendela:
_window->contentView = button;
Terakhir, buat jendela terlihat:
_window->visible = true ;
Anda dapat menemukan dokumentasi lengkap Boden di situs web kami.
Dokumentasi Boden masih dalam proses. Jika Anda tidak dapat menemukan informasi yang Anda cari, jangan ragu untuk bertanya dengan membuka terbitan GitHub atau menghubungi kami secara langsung.
Anda dapat melisensikan Boden berdasarkan salah satu lisensi sumber terbuka berikut:
Untuk lisensi komersial/kepemilikan, silakan hubungi kami di [email protected].
Kami senang dengan tanggapan Anda!
Hubungi kami dan dapatkan informasi terbaru tentang Boden:
Jika Anda menemukan sesuatu yang hilang atau tidak berfungsi, harap pertimbangkan untuk membuka masalah GitHub.