繁体   English   中英

使用按钮使布局可见/不可见

[英]Making Layouts visible/invisible with Button

目前,我正在为Android平板电脑上的图形用户界面项目。 在一个屏幕上,我有几个按钮,我想通过它们使RelativeLayout可见/不可见。

我尝试使用onClickListener,但是在内部方法中, onClick不支持非最终变量,该变量用于选择每个按钮和RelativeLayout

GUI是动态构建的,因为其整个结构取决于它通过XML文件获取的数据。 同样, RelativeLayout使用TextView ,它接收其文本的更新(温度和湿度等传感器数据),这就是为什么使用动态方法的原因。

您能给我一些解决该问题的方法吗? 感谢帮助。 如果声明的信息对您来说还不够,请询问,我会给您更多详细信息。

目前,我尝试了以下方法:

private void setSensorPointOnClick(final ObjectView currentObjectView, final String currentLinkName)
{
    for(int i=0; i<listofSensorDeviceButtons.size(); i++ )
    {

        listofSensorDeviceButtons.get(i).setOnClickListener(
            new View.OnClickListener()  
            {
                public void onClick(View v)  
                {
                    arrayClickedButton[i] = listofSensorDeviceButtons.get(i);
                    mainFrameLayout.removeAllViews();
                    stepToObject(currentObjectView, currentObjectView.getName());               
                }
            }
        );

    }
}

使用包含您要隐藏/显示的视图的字段(并在onClickListener中使用它们),或在事件处理中使用findViewById。

另一种选择是创建另一个最终的视图变量,该变量将在设置onClickListener之前设置,以保存新创建的视图的引用。

因此,简而言之,我写的可能解决方案是:

  1. 使用领域。
  2. 使用findViewById
  3. 使用额外的最终变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM