2017-01-31 5 views
1

Ich bin mir nicht sicher, was das tut.Speicherverwaltung in Titan Android

Zum Beispiel:

var myView = Ti.UI.createView({ 
    height : "10.8%", 
    top : 0, 
    width : "30%", 
    right : 0, 
    zIndex : 100 
}); 



var myLabel =Ti.UI.createLabel({ 
    text : (local).toString().toUpperCase(), 
    color : "#444444", 
    height : Ti.UI.SIZE, 
    width : Ti.UI.SIZE, 
    font : { 
     fontSize : deviceWidth * 0.03, 
     fontFamily : "Dosis-SemiBold" 
    }, 
    backgroundColor : "transparent", 
}); 

myView.add(myLabel); 

In diesem Fall habe ich ein Label meiner Ansicht hinzugefügt haben.

Wenn ich das Label aus der Ansicht mit entfernen: myView.removeAllChildren();, der Label Gast aus der Ansicht entfernt, aber wird das Etikett aus dem Speicher durch den GC entfernt oder fällig muss ich wirklich die Bezeichnung auf Null setzen?

Antwort

0

Sie haben Ihr Etikett immer noch im Speicher, tatsächlich können Sie es wieder in die Ansicht einfügen, um zu sehen, dass es noch immer da ist.

Sie müssen diese Variable auf Null setzen, um sie vollständig aus dem Speicher zu entfernen.

lassen Sie mich zitieren die docs

Probleme entstehen, wenn Sie Verweise auf Objekte, die Sie nicht mehr benötigen, verlassen. Sie können Verweise entfernen, indem Sie Variablen und Objekte auf null setzen, wenn Sie sie nicht mehr benötigen. Dies umfasst sowohl Variablen und Objekte, die Sie erstellen, um die Geschäftslogik Ihrer App darzustellen, als auch Objekte, die Titankomponenten wie Ansichten oder Bilder darstellen.

haben eine gute Lese :)

+0

Dank für die Wiedergabe :) –