0

TextView在活动 1 中有 5 - 6 个,如下所示:

textChallenge = new TextView(context.getApplicationContext());
    textChallenge.setTypeface(fontJoan);
    textChallenge.setTextColor(Color.WHITE);
    textChallenge.setText("99");
    textChallenge.measure((int)Define.getScreenWidth(), (int)Define.getScreenHeight());
    textChallenge.layout(0, 0, 200, 200);
    textChallenge.setTextSize(TypedValue.COMPLEX_UNIT_PX, 20);
    textChallenge.setDrawingCacheEnabled(true);
    textChallenge.buildDrawingCache();

我有 textChallenger、textUser、textBestScore 等。当我开始活动 2 并返回

活动 1. 我使用 . 检查我的分配(Debug.getNativeHeapAllocatedSize() / 1048576L)

我发现每次回到活动 1 时分配大小都会增加一点。

我怎么能想释放这些TextView分配?我尝试setText("")但我得到了

NullPointerException. 我必须以编程方式创建,所以我不能使用findViewByID.

我尝试textChallenge.getDrawingCache().recycle(); textChallenge = null;

但是,我的堆分配大小仍在增加。请给我一些建议,谢谢。

4

0 回答 0