担心图片是被我PS后的同学可以直接进入下面的地址测试:
http://www.cnblogs.com/yorhom/articles/3163078.html
由于">
Heim Web-Frontend H5-Tutorial HTML5 implementiert Beispielcode für die iPhone-Boot-Schnittstelle. Tutorial-Fähigkeiten für HTML5

HTML5 implementiert Beispielcode für die iPhone-Boot-Schnittstelle. Tutorial-Fähigkeiten für HTML5

May 16, 2016 pm 03:49 PM
html5 iphone 开机界面

Heute hatte ich plötzlich eine Idee und dachte, ich könnte Html5 verwenden, um das Apple-Betriebssystem zu imitieren und ein iOS zu erstellen, das auf der Webplattform ausgeführt werden kann.
Natürlich muss ich ein Betriebssystem entwickeln und warten, bis ich wieder auf den Berg zurückkehre, um weitere hundert Jahre zu üben. Lasst uns heute Spaß haben und zuerst eine Startup-Schnittstelle erstellen.
Das fertige Bild:

Studenten, die befürchten, dass das Bild von mir mit Photoshop bearbeitet wurde, können zum Testen direkt an die folgende Adresse gehen:
http://www.cnblogs.com /yorhom/articles /3163078.html
Da lufylegend wirklich gut verpackt ist, wird diese Entwicklung immer noch mit dieser Engine durchgeführt. Es gibt nicht viel Code, interessierte Freunde können direkt einen Blick darauf werfen.
Code in index.html:

Code kopieren
Der Code lautet wie folgt:


;
/script>
>


Code in Main.js:





Code kopieren


Der Code lautet wie folgt:
init(50,"mylegend",450,640,main); LGlobal.setDebug(true); var loadData = [ {path : "./js/Shape.js",type:"js"}, {Pfad:"./js/BootPage.js",type:"js"},
{Name:"wallpaper" , Pfad:"./images/wall_paper.jpg"}
var datalist = {};
var backLayer,screenLayer,buttonLayer; ;
function main(){
LLoadManage.load(loadData,null,gameInit);
function gameInit(result){
datalist = result;
initLayer();
//iPhone-Shell hinzufügen
addShape();
//Startschnittstelle hinzufügen
addBack();
function initLayer(){
//Hintergrundebene
backLayer = new LSprite();
addChild(backLayer);
}
function addShape(){
iosShape = new Shape("IPHONE",400,600) ;
iosShape.x = 15;
iosShape.y = 5;
backLayer.addChild(
}
function addBack(){
bootPage = new BootPage(); ;
bootPage.x = 40;
bootPage.y = 40;
var wallPaperHeight = iosShape.getScreenHeight(); new LBitmapData(datalist["wallpaper"],200,480,wallPaperWidth,wallPaperHeight));
bootPage.addSlider();
iosShape.addChild(bootPage);


Der Code in Shape.js:





Kopieren Sie den Code


Der Code ist wie folgt folgt:


/*
* Shape.js
**/
function Shape(type,width,height){
var s = this; base(s,LSprite ,[]);
s.x = 0;
s.deviceWidth = width;
s.type = height ;
/ /Shell Layer
s.shapeLayer = new LSprite();
s.addChild(s.shapeLayer); //Home Button Layers.homeButtonLayer = new LSprite( ); s.addChild(s.homeButtonLayer); /Screen Layer
s.screenLayer = new LSprite();
/ Zeigt sich selbst
s._showSelf();
}
Shape.prototype._showSelf = function(){
var s = this;
switch(s.type){
case "IPHONE":
//Zeichne die Shell
varshadow = new LDropShadowFilter(15,45,"black",20);
s.shapeLayer.graphics.drawRoundRect(10,"black",[ 0,0,s. deviceWidth,s.deviceHeight,15],true,"black");
s.shapeLayer.filters = [shadow];//Den Bildschirm zeichnen
s.screenLayer. Graphics.drawRect(0," black",[s.deviceWidth/10,s.deviceWidth/10,s.deviceWidth*0.8,s.deviceHeight*0.8],true,"white");
//Zeichne die Home-Taste
s.homeButtonLayer .graphics.drawArc(1,"black",[s.deviceWidth/2,s.deviceHeight*0.87 s.deviceWidth/10,s.deviceWidth/16,0,2*Math.PI ],true,"#191818" );
s.homeButtonLayer.graphics.drawRoundRect(3,"white",[s.deviceWidth/2-10,s.deviceHeight*0.87 s.deviceWidth/10 - 10,20 ,20,5]);
break;
}
Shape.prototype.getScreenWidth = function(){
return s.deviceWidth* 0,8;
};
Shape.prototype.getScreenHeight = function(){
var s = this;
Der letzte ist der Code in BootPage.js:

Kopieren Sie den Code
Der Code lautet wie folgt:

/*
* BootPage.js
**/
function BootPage(){
var s = this;
base(s,LSprite,[] );
s.x = 0;
s.y = 0;
s.sliderLayer = new LSprite(); .addWallPaper = function( bitmapdata){
var s = this; 🎜>};
BootPage.prototype.addTime = function(){
var s = this;
varshadow = new LDropShadowFilter(1,1,"black",8); addChild(s.timeLayer );
s.timeLayer.graphics.drawRect(0,"",[0,0,iosShape.getScreenWidth(),150],true,"black"); Zeittextbereich
s.timeLayer.alpha = 0.3;
s.timeText = new LTextField();
s.timeText.y = 20; >s.timeText.size = 50;
s.timeText.color = "white";
s.timeText.filters = [shadow]; >//Join-Datumstextbereich
s.dateText = new LTextField();
s.dateText.size = 20;
s.dateText.y = 100;
s.dateText.color = "white";
s.dateText.filters = [shadow]; timeText);
s.addChild(s.dateText);
//Datum durch Timeline-Ereignis aktualisieren
s.addEventListener(LEvent.ENTER_FRAME,function(s){
var date = new Date( );
if(date.getMinutes() < 10){
if(date.getHours() < 10){
s.timeText.text = "0" date.getHours() " :0" date .getMinutes();
}else{
s.timeText.text = date.getHours() ":0" date.getMinutes();
}
}else{
if( date.getHours() < 10){
s.timeText.text = "0" date.getHours() ":" date.getMinutes();
}else{
s .timeText.text = date.getHours() ":" date.getMinutes();
}
}
s.dateText.text = date.getMonth() 1 „Monat“ date.getDate() "day";
})
BootPage.prototype.addSlider = function(bitmapdata){
var s = this; >s.sliderLayer .graphics.drawRect(0,"",[0,iosShape.getScreenHeight()-100,iosShape.getScreenWidth(),100],true,"black");
s.sliderLayer.alpha = 0,3;
//Füge die Slider-Frame-Ebene hinzu
var barBorder = new LSprite();
barBorder.y = iosShape.getScreenHeight()-70; s.addChild( barBorder);
//Sliderbeschreibung hinzufügen
var moveBarCommont = new LTextField();
moveBarCommont.x = 80;
moveBarCommont.y = 10 ;
moveBarCommont.color = "white";
moveBarCommont.text = "Slide to unlock";
barBorder.addChild(moveBarCommont); bar = new LSprite();
bar.x = 35;
bar.y = iosShape.getScreenHeight()-70;
bar.canMoveBar = false;
//Mausklick und Maus hinzufügen Bewegung Event
bar.addEventListener(LMouseEvent.MOUSE_DOWN,function(event,s){
s.canMoveBar = true;
});
bar.addEventListener(LMouseEvent.MOUSE_UP,function(event, s) ){
LTweenLite.to(bar,0.5,{
x:35,
onComplete:function(s){
s.canMoveBar = false;
}
} );
s.canMoveBar = false;
s.addChild(bar);
bar.addEventListener(LMouseEvent.MOUSE_OUT,function(event,s){
LTweenLite. to( bar,0.5,{
x:35,
onComplete:function(s){
s.canMoveBar = false;
}
});
s.canMoveBar = false;
});
s.addEventListener(LMouseEvent.MOUSE_MOVE,function(event){
if(bar.canMoveBar == true){
bar.x = event.offsetX - 70;
if(bar.x > 215){bar.x = 215;}
if(bar.x < 35){bar.x = 35;}
}
});
s.addChild(bar);
//Zeichne das Schiebereglerfeld
barBorder.graphics.drawRoundRect(2,"#191818",[0,0,250,40,5],true,"black" ) ;
barBorder.alpha = 0.7;
//Zeichne den Schieberegler
bar.graphics.drawRoundRect(2,"dimgray",[0,0,70,40,5],true,"lightgray ");
bar.alpha = 0.7;
};


Comme c'est juste pour mon propre divertissement, je n'entrerai pas dans les détails du code, je parlerai uniquement des utilisations de Shape.js et BootPage.js. Shape.js est la classe utilisée pour dessiner la coque de notre iPhone et BootPage.js est la classe de l'interface de démarrage. Les fonctions des deux sont différentes, ce qui équivaut à ce que Shape.js soit utilisé pour gérer l'apparence du matériel et que BootPage.js soit utilisé pour gérer l'affichage.
Je vous laisse le reste pour voir par vous-même. Même si le code est un peu long, il n'est pas logique. Lisez-le lentement ! Bien sûr, les étudiants qui ne comprennent pas ne connaissent peut-être pas lufylegend. Voici le site officiel du moteur :
http://lufylegend.com/lufylegend
Documentation de l'API du moteur :
http:/. /lufylegend.com /lufylegend/api
Pour les étudiants qui ont du mal à lire le code à l'aide des blogs CSDN, pourquoi ne pas utiliser votre éditeur pour ouvrir le code source et y jeter un œil. L'adresse de téléchargement du code source est la suivante : http://files.cnblogs.com/yorhom/iphone01.rar
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Aktivierungssperre für iPhone-Teile in iOS 18 RC entdeckt – möglicherweise Apples jüngster Schlag gegen das Recht auf Reparatur, das unter dem Deckmantel des Benutzerschutzes verkauft wird Aktivierungssperre für iPhone-Teile in iOS 18 RC entdeckt – möglicherweise Apples jüngster Schlag gegen das Recht auf Reparatur, das unter dem Deckmantel des Benutzerschutzes verkauft wird Sep 14, 2024 am 06:29 AM

Anfang des Jahres kündigte Apple an, die Funktion „Aktivierungssperre“ auf iPhone-Komponenten auszuweiten. Dadurch werden einzelne iPhone-Komponenten wie Akku, Display, FaceID-Baugruppe und Kamerahardware effektiv mit einem iCloud-Konto verknüpft.

Die Aktivierungssperre für iPhone-Teile könnte Apples jüngster Schlag gegen das Recht auf Reparatur sein, das unter dem Deckmantel des Benutzerschutzes verkauft wird Die Aktivierungssperre für iPhone-Teile könnte Apples jüngster Schlag gegen das Recht auf Reparatur sein, das unter dem Deckmantel des Benutzerschutzes verkauft wird Sep 13, 2024 pm 06:17 PM

Anfang des Jahres kündigte Apple an, die Aktivierungssperre auf iPhone-Komponenten auszuweiten. Dadurch werden einzelne iPhone-Komponenten wie Akku, Display, FaceID-Baugruppe und Kamerahardware effektiv mit einem iCloud-Konto verknüpft.

Gate.io Trading Platform Offizielle App -Download- und Installationsadresse Gate.io Trading Platform Offizielle App -Download- und Installationsadresse Feb 13, 2025 pm 07:33 PM

In diesem Artikel werden die Schritte zum Registrieren und Herunterladen der neuesten App auf der offiziellen Website von Gate.io beschrieben. Zunächst wird der Registrierungsprozess eingeführt, einschließlich der Ausgabe der Registrierungsinformationen, der Überprüfung der E -Mail-/Mobiltelefonnummer und dem Ausfüllen der Registrierung. Zweitens wird erläutert, wie Sie die Gate.io -App auf iOS -Geräten und Android -Geräten herunterladen. Schließlich werden Sicherheits-Tipps betont, z. B. die Überprüfung der Authentizität der offiziellen Website, die Ermöglichung von zweistufiger Überprüfung und das Aufmerksamkeit von Phishing-Risiken, um die Sicherheit von Benutzerkonten und -vermögen zu gewährleisten.

Mehrere iPhone 16 Pro-Benutzer berichten von Problemen mit dem Einfrieren des Touchscreens, die möglicherweise mit der Empfindlichkeit bei der Ablehnung der Handfläche zusammenhängen Mehrere iPhone 16 Pro-Benutzer berichten von Problemen mit dem Einfrieren des Touchscreens, die möglicherweise mit der Empfindlichkeit bei der Ablehnung der Handfläche zusammenhängen Sep 23, 2024 pm 06:18 PM

Wenn Sie bereits ein Gerät aus der iPhone 16-Reihe von Apple – genauer gesagt das 16 Pro/Pro Max – in die Hände bekommen haben, ist die Wahrscheinlichkeit groß, dass Sie kürzlich ein Problem mit dem Touchscreen hatten. Der Silberstreif am Horizont ist, dass Sie nicht allein sind – Berichte

ANBI App Offizieller Download V2.96.2 Neueste Version Installation Anbi Offizielle Android -Version ANBI App Offizieller Download V2.96.2 Neueste Version Installation Anbi Offizielle Android -Version Mar 04, 2025 pm 01:06 PM

Binance App Offizielle Installationsschritte: Android muss die offizielle Website besuchen, um den Download -Link zu finden. Wählen Sie die Android -Version zum Herunterladen und Installieren. Alle sollten auf die Vereinbarung über offizielle Kanäle achten.

Wie löste ich das Problem des Fehlers 'Undefined Array Key '' 'Fehler beim Aufrufen von Alipay EasysDK mithilfe von PHP? Wie löste ich das Problem des Fehlers 'Undefined Array Key '' 'Fehler beim Aufrufen von Alipay EasysDK mithilfe von PHP? Mar 31, 2025 pm 11:51 PM

Problembeschreibung beim Aufrufen von Alipay EasysDK mithilfe von PHP nach dem Ausfüllen der Parameter gemäß dem offiziellen Code wurde während des Betriebs eine Fehlermeldung gemeldet: "undefiniert ...

Laden Sie den Link des OUYI IOS -Versionsinstallationspakets herunter Laden Sie den Link des OUYI IOS -Versionsinstallationspakets herunter Feb 21, 2025 pm 07:42 PM

Ouyi ist ein weltweit führender Kryptowährungsaustausch mit seiner offiziellen iOS-App, die den Benutzern ein bequemes und sicheres Erlebnis für digitales Asset Management bietet. Benutzer können das Installationspaket Ouyi iOS -Version kostenlos über den in diesem Artikel bereitgestellten Download -Link herunterladen und die folgenden Hauptfunktionen genießen: Bequeme Handelsplattform: Benutzer können Hunderte von Kryptowährungen auf der OUYI IOS -App, einschließlich Bitcoin und Ethereum, problemlos kaufen und verkaufen und dotecoin. Sicherer und zuverlässiger Speicher: Ouyi nimmt fortschrittliche Sicherheitstechnologie ein, um den Benutzern einen sicheren und zuverlässigen digitalen Asset -Speicher zu bieten. 2FA, biometrische Authentifizierung und andere Sicherheitsmaßnahmen stellen sicher, dass Benutzervermögen nicht verletzt werden. Echtzeit-Marktdaten: Die OUYI IOS-App bietet Echtzeit-Marktdaten und -diagramme, sodass Benutzer die Verschlüsselung jederzeit erfassen können

Wie installiere und registriere ich eine App zum Kauf virtueller Münzen? Wie installiere und registriere ich eine App zum Kauf virtueller Münzen? Feb 21, 2025 pm 06:00 PM

Zusammenfassung: Dieser Artikel soll Benutzer zur Installation und Registrierung einer virtuellen Währungshandelsanwendung auf Apple -Geräten leiten. Apple verfügt über strenge Vorschriften für Anwendungen mit virtuellen Währungen, sodass Benutzer spezielle Schritte ausführen müssen, um den Installationsprozess abzuschließen. Dieser Artikel wird auf die erforderlichen Schritte ausgelöst, einschließlich des Herunterladens der Anwendung, des Erstellens eines Kontos und der Überprüfung Ihrer Identität. Im Anschluss an den Handbuch dieses Artikels können Benutzer problemlos eine virtuelle Währungs -Handels -App für ihre Apple -Geräte einrichten und mit dem Handel beginnen.

See all articles