Crate bevy_ios_safearea

Source
Expand description

§bevy_ios_safearea

Following released Bevy versions crates.io docs.rs discord

Bevy plugin to query ios device safe area insets.

demo

§Features

  • reads safe area on app start
  • easy access via a resource
  • noop on non-ios platforms (no cfgs needed in your app code)

§Instructions

  1. Add to XCode: Add SPM (Swift Package Manager) dependency
  2. Add Rust dependency
  3. Setup Plugin

§1. Add to XCode

  • Go to File -> Add Package Dependencies and paste https://github.com/rustunit/bevy_ios_safearea.git into the search bar on the top right: xcode

§2. Add Rust dependency

cargo add bevy_ios_safearea

or

# always pin to the same exact version you also of the Swift package
bevy_ios_safearea = { version = "=0.3.0" }

§3. Setup Plugin in Bevy

Initialize Bevy Plugin:

// request initialisation right on startup
use bevy::prelude::*;
App::new()
    .add_plugins((DefaultPlugins,bevy_ios_safearea::IosSafeAreaPlugin));

Accessing it:

use bevy::prelude::*;
use bevy_ios_safearea::IosSafeArea;

fn bevy_system(safe_area: IosSafeArea) {
    let safe_area_top = safe_area.top();
}

§Our Other Crates

§Bevy version support

bevycrate
0.160.3,main
0.150.1,0.2

§License

All code in this repository is dual-licensed under either:

at your option. This means you can select the license you prefer.

§Your contributions

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Structs§

IosSafeArea
SystemParam helper allowing to read insets while defaulting to 0 if not available.
IosSafeAreaPlugin
Plugin to query iOS device safe area insets.
IosSafeAreaResource
Resource providing iOS device safe area insets. It is created and added only when there are insets on the running device. It is recommended to access it from systems by using IosSafeArea SystemParam.