Android 如何以编程方式更改窗口小部件视图(按钮)的可见性

Android 如何以编程方式更改窗口小部件视图(按钮)的可见性,android,Android,我的android小部件中有两个按钮,我想在运行时更改它们的可见性,即如果本地数据库中没有数据,我想隐藏一个按钮 如何获取按钮的id,以及如何使其可见或不可见 请建议使用此代码: Button btnFirst=(Button)findViewById(R.id.btn); btnFirst.setVisibilty(View.INVISIBLE); 为要更改xml布局中可见性的按钮设置id: <Button android:layout_width="match_parent"

我的android小部件中有两个按钮,我想在运行时更改它们的可见性,即如果本地数据库中没有数据,我想隐藏一个按钮

如何获取按钮的id,以及如何使其可见或不可见

请建议使用此代码:

Button btnFirst=(Button)findViewById(R.id.btn);
btnFirst.setVisibilty(View.INVISIBLE);

为要更改xml布局中可见性的按钮设置id:

<Button
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/button"/>
最后设置可见性:

button.setVisibility(View.GONE);

您不能像以下那样更改可见性:

<Button
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/button"/>

View button = findViewById(R.id.button);

button.setVisibility(View.GONE);

要隐藏或显示按钮,可以使用Remoteview.setViewVisibility(viewid,Remoteview.visibility)

使用可以隐藏视图。。。按钮的id是在xml布局中定义的。您可以使用view.getId()获取该视图的id。我知道setVisibility(view.go)隐藏按钮……但是在小部件中,我们不能像button.setVisibility(view.go)那样直接设置可见性…我们必须使用远程视图查找id。findViewByID未被识别为现有方法在使用之前必须导入哪个包?
findViewByID()
活动的一部分。它只能在活动内部和
View
s上使用。请澄清您的问题或创建一个新的问题,因为根据提供的信息级别,不可能给出适当的答案。您的澄清有帮助。谢谢
button.setVisibility(View.GONE);
<Button
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/button"/>

View button = findViewById(R.id.button);

button.setVisibility(View.GONE);
RemoteViews.findViewById(R.id.button, Visibility.GONE);