Der Android Studio -Speicher steigt mit jedem LayoutschalterJava

Java-Forum
Anonymous
 Der Android Studio -Speicher steigt mit jedem Layoutschalter

Post by Anonymous »

Ich habe ein Problem mit dem Speicher - jedes Mal, wenn ich das Layout ändere, steigt die Speicher. Auch wenn es im Leerlauf langsam steigt, steigt es langsam, obwohl im Hintergrund nichts läuft. Ich habe versucht, Nohistory -Flagge, Flaggen im Zusammenhang mit Absicht und der Änderung meiner Klasse von serialisierbar nach Singleton hinzuzufügen, aber das Problem bleibt bestehen. Ich habe mein Problem derzeit auf diese Klassen reduziert: < /p>

Code: Select all

public class MainActivity extends AppCompatActivity {

private DataHolder dataHolder;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

dataHolder = DataHolder.getInstance();
if(dataHolder.isDataNull())
dataHolder.setData(new Data());
dataHolder.getData().setContext(this);

Button info_button = findViewById(R.id.button3);
info_button.setOnClickListener(v -> {
Intent intent = new Intent(MainActivity.this, InfoActivity.class);
dataHolder.getData().clearContext();
startActivity(intent);
finish();
});
}
}
< /code>
und < /p>
public class InfoActivity extends AppCompatActivity {

private DataHolder dataHolder;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.info_ver);

dataHolder = DataHolder.getInstance();
dataHolder.getData().setContext(this);

Button back_button = findViewById(R.id.back);
back_button.setOnClickListener(v -> {
Intent intent = new Intent(InfoActivity.this, MainActivity.class);
dataHolder.getData().clearContext();
startActivity(intent);
finish();
});

}
}
< /code>
Auch ich denke, es könnte ein [url=viewtopic.php?t=20324]Problem[/url] mit dem Kontext geben, den ich in Daten verwende, um Toast später zu verwenden: < /p>
public class Data{
private String visibleExpression = "";
private String realExpression = "";
private String currentNumber = "0";
private final int MAX_SIZE = 20;
private Operation lastOperation = NONE;
private boolean isAlreadyNextNumber = true;
private boolean error = false;
private boolean isResultGiven = false;
transient WeakReference context;

public void setContext(Context context)
{
this.context = new WeakReference(context);
}
public void clearContext() {
if (context != null) {
context.clear();
}
context = null;
}
}
Ich habe keine Ideen mehr und kann nichts Nützliches finden. Bitte helfen Sie

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post