0

我为操作栏做了一个布局:

动作栏.xml:

<LinearLayout
    android:id="@+id/titleLayout"
    android:layout_width="fill_parent"
    android:layout_height="85dp"
    android:height="70dip"
    android:orientation="horizontal"
    android:paddingBottom="5dp"
    android:paddingTop="5dp" >

    <ImageView
        android:id="@+id/logo"
        android:layout_width="300dp"
        android:layout_height="70dp"
        android:layout_marginBottom="54dp"
        android:paddingLeft="24dp"
        android:paddingTop="5dp"
        android:src="@drawable/mobility" />

</LinearLayout>

我将此布局包含在其他一些布局中,如下所示:

 <include
  android:id="@+id/include"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  layout="@layout/actionbar" />

现在我想在我包含它的所有布局中设置这个包含的操作栏布局不可见。

有没有办法做到这一点?

编辑:

并考虑我使用 ViewFlipper 在布局之间切换。

4

3 回答 3

1

你不能就这样吗

findViewById(R.id.titleLayout).setVisibility(View.INVISIBLE);

如果您使用的是 ViewFlipper,那么这样的事情可能会有所帮助:

vf.getCurrentView().findViewById(R.id.titleLayout).setVisibility(View.INVISIBLE);

其中 vf 是从 xml 对您的 ViewFlipper 的引用

高温高压

于 2013-10-02T06:03:09.513 回答
0

您可以像任何其他元素或布局一样将其设置为不可见:

findViewById(R.id.include).setVisibility(View.INVISIBLE);

两个备注:

  • 我认为您实际上正在寻找更强大的隐形形式,即:findViewById(R.id.include).setVisibility(View.GONE);
  • 您必须为每个包含使用不同的 ID,以确保找到正确的 ID。但我猜你只是简化了你的问题的代码。
于 2013-10-02T06:02:58.567 回答
0

尝试这个,

View mView = findViewById(R.id.include);
ImageView mImgView = (ImageView) mView.findViewById(R.id.logo).setVisibility(View.GONE);

使用这种方法,您可以访问您拥有的任何包含中的任何字段。

于 2013-10-02T06:43:40.493 回答