2

我有一个显示成分数量的食谱应用程序,当一个文本视图行不用于一种成分时,我将相应的值设置为 0,然后在 setText 方法中,我将所有值为 0 的文本视图设置为 setVisbility(View.GONE 但它们是仍然存在。注意下面 0g 的行。有什么想法吗?

面包师的骄傲 ©ollygrov

好的,所以我像这样设置每种成分。

        A = 150;
        B = 3;
        C = 1;
        D = 3;
        E = 90;
        F = (A+B+C+D+E+F);
        G = 0;
        H = 0;
        I = 0;
        J = 0;

        a = "French Flour:";
        b = "Salt:";
        c = "Improver:";
        d = "Yeast:";
        e = "Water:";
        f = "Total Weight:";
        g = "";
        h = "";
        i = "";
        j = "";

不需要 G、H、I 和 J,所以我将它们设置为 0。然后我有一个方法在我的 onCreate 结束时执行此操作,但对于每个(未使用的)行:

如果(G == 0){

        A6.setVisibility(View.GONE);
        }

编辑:将问题归结为特定点,我注意到其中一个视图实际上确实通过 View.GONE 消失了。将命令注释掉,它又回来了。现在我在想,在一切开始混乱之前,你可以拥有一定数量的 textViews。我总共有 40 种配料,再加上布局。看看我能用 TableLayout 做什么。如果有人有更好的建议...

4

1 回答 1

0

最后我放弃了 setVisibility() 方法。什么可能是一个简单的修复 - 我决定使用 Double 和 String ArrayLists、for 循环和新的 TextViews 重新创建整个部分。现在它保持布局整洁,因为活动只生成所需数量的 TextViews,而不是在何时删除必要的。对正在寻找原始问题解决方案的任何人表示抱歉。

于 2013-10-31T01:14:11.530 回答