<!doctype html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>PIXI Switch</title> <link rel="stylesheet" href="../3rdparty/highlight/styles/default.css"> <link rel="stylesheet" href="../../css/doctest.css"> <script src="../3rdparty/highlight/highlight.pack.js"></script> <script src="../../dist/iwmlib.3rdparty.js"></script> <script src="../../dist/iwmlib.js"></script> <script src="../../dist/iwmlib.pixi.js"></script> </head> <body onload="Doctest.run()"> <h1>Switch</h1> <p>A switch is a visual toggle between two mutually exclusive states—on and off.</p> <p><strong>Consider adjusting a switch’s appearance to match the style of your app.</strong> If it works well in your app, change the colors of a switch in its on and off states or use custom imagery to represent the switch.</p> <p><strong>Use switches in table rows only.</strong> Switches are intended for use in tables, such as in a list of settings that can be toggled on and off. If you need similar functionality in a toolbar or navigation bar, use a button instead, and provide two distinct icons that communicate the states.</p> <p><strong>Avoid adding labels to describe the values of a switch.</strong> Switches are either on or off. Providing labels that describe these states is redundant and clutters the interface.</p> <p><strong>Consider using switches to manage the availability of related interface elements.</strong> Switches often affect other content onscreen. Enabling the Airplane Mode switch in Settings, for example, disables certain other settings, such as Cellular and Personal Hotspot. Disabling the Wi-Fi switch in Settings > Wi-Fi causes available networks and other options to disappear.</p> <p>Let's look at some switch examples:</p><br /> <canvas id="canvas" class="interactive"></canvas> <p> What you should see: Many switches with very different styling and behaviour. </p> <script class="doctest"> const app = new PIXIApp({ view: canvas, width: 900, height: 250, transparent: false }).setup().run() let switch1 = new Switch({ x: 10, y: 20 }) let switch2 = new Switch({ x: 90, y: 20, fill: 0xfd355a, fillActive: 0x5954d3, controlFill: 0xfecd2d, controlFillActive: 0xfd413b, strokeActiveWidth: 4, controlStrokeActive: 0x50d968, controlStrokeActiveWidth: 12, controlStrokeActiveAlpha: .8, tooltip: 'Dies ist ein Switch' }) let switch3 = new Switch({ x: 170, y: 20, width: 100, height: 40, fill: 0xfe9727, fillAlpha: .5, fillActive: 0x5954d3, stroke: 0x5ec7f8, strokeWidth: 12, strokeActive: 0xfd355a, strokeActiveWidth: 4, controlFill: 0xfecd2d, controlFillActive: 0xfd413b, controlStroke: 0xfd413b, controlStrokeWidth: 8, controlStrokeActive: 0x50d968, controlStrokeActiveWidth: 16, controlStrokeActiveAlpha: .8, controlRadiusActive: 12, duration: 3, durationActive: 1 }) let switch4 = new Switch({ x: 10, y: 90, active: true }) let switch5 = new Switch({ x: 90, y: 90, disabled: true }) let switch6 = new Switch({ x: 170, y: 90, active: true, disabled: true }) let switch7 = new Switch({ x: 250, y: 100, width: 100, height: 10, fill: 0xffffff, fillActive: 0xffffff, duration: .2, durationActive: .1, controlFill: 0x00ff00, controlFillActive: 0xff0000, controlRadius: 15, controlRadiusActive: 12, controlStroke: 0x00aa00, controlStrokeWidth: 3, controlStrokeActive: 0xaa0000, controlStrokeActiveWidth: 2, tooltip: { container: app.scene, content: 'Das Gesetz ist der Freund des Schwachen.' } }) app.scene.addChild(switch1, switch2, switch3) app.scene.addChild(switch4, switch5, switch6, switch7) </script> </body>