Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android视图不刷新_Android_Android Layout - Fatal编程技术网

Android视图不刷新

Android视图不刷新,android,android-layout,Android,Android Layout,我已尝试使用invalidate()刷新我的视图,但它不起作用。我知道还有另一种方法可以使用draw(Canvas)刷新 有人能给我解释一下如何以及为什么使用画法吗? 画布是什么?(这是我想重新绘制的视图吗?) 以下是如何使用它的一些示例代码: if(pageNumber == 1) { if(pageCount == --lastPageCount) { page2Layout.setVisibility(View.GON

我已尝试使用
invalidate()
刷新我的视图,但它不起作用。我知道还有另一种方法可以使用
draw(Canvas)
刷新

有人能给我解释一下如何以及为什么使用画法吗? 画布是什么?(这是我想重新绘制的视图吗?)

以下是如何使用它的一些示例代码:

    if(pageNumber == 1)
    {
        if(pageCount == --lastPageCount)
        {
            page2Layout.setVisibility(View.GONE);
            page1Layout.setVisibility(View.VISIBLE);
        }
        if(created1 == false)
        {
            help.setOrientation(LinearLayout.HORIZONTAL);
            help.setLayoutParams(params);

            helpText.setLayoutParams(params);
            helpText.setText("TEST!\n\n" + 
                    "test\n" +
                    "Test");

            help.addView(helpText);
            page1Layout.addView(help);
            newSheetLayoutV.addView(page1Layout);
            created1 = true;
        }
    }
这段代码还有一个部分不能正常工作(这就是为什么我需要使用刷新)

基本上,代码工作正常,除了删除视图
page1Layout.setVisibility(view.GONE)时的刷新,并将新视图添加到布局中


谢谢你的帮助

修复,添加了
可见性(View.GONE)
和addView来创建布局,然后在需要布局时使布局可见

    else if(pageNumber == 4)
    {
        if(pageCount == ++lastPageCount)
        {
            page3Layout.setVisibility(View.GONE);
            page4Layout.setVisibility(View.VISIBLE);
        }
        else if (pageCount == --lastPageCount)
        {
            page5Layout.setVisibility(View.GONE);
            page4Layout.setVisibility(View.VISIBLE);
        }

        if(created4 == false)
        {
            LinearLayout horizontalPageLayout = new LinearLayout(this);
            horizontalPageLayout.setOrientation(LinearLayout.HORIZONTAL);
            horizontalPageLayout.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));

            TextView testText = new TextView(this);
            testText.setLayoutParams(params);
            testText.setText("Test!");

            page4Layout.addView(testText);

            newSheetLayoutV.addView(page4Layout);

            created4 = true;
        }
    }