Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.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
Java 将可见性从View.GONE状态设置为View.VISIBLE无法正常工作_Java_Android - Fatal编程技术网

Java 将可见性从View.GONE状态设置为View.VISIBLE无法正常工作

Java 将可见性从View.GONE状态设置为View.VISIBLE无法正常工作,java,android,Java,Android,我有一个非常奇怪的问题,我不知道如何解决它。 我有一个属性为android:visibility=“gone”的线性布局内的视图 这是布局文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"

我有一个非常奇怪的问题,我不知道如何解决它。 我有一个属性为android:visibility=“gone”的线性布局内的视图 这是布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/bg"
    android:orientation="vertical">

    <TextView
        android:id="@+id/titleTextView"
        android:gravity="end"
        android:text="dfgdfg"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@android:color/transparent"
        android:paddingTop="5dp"
        android:paddingBottom="5dp"/>

    <View
        android:layout_width="match_parent"
        android:layout_height="8dp"
        android:background="@drawable/shadow"
        android:id="@+id/preLollipopShadow"
        android:visibility="gone"/>

</LinearLayout>
它并没有像我期望的那样工作,我希望阴影在粘性模式下是可见的,否则就消失了

我怎样才能做到这一点

更新1: 当我以可见性“不可见”开始,切换到“可见”并返回时,它正在工作,但在我的PreLollippShadow视图上不是以“已消失”的开始状态

更新2:
视图位于RecyclerView中,更新视图可见性是否与嵌套到RecyclerView中有关

要隐藏和显示的视图附加了一个id预列印阴影。通过id很容易找到视图

parentView.findViewById(R.id.preLollipopShadow);


如果您想引用活动中的视图。

只是一句备注:您可以使用三元运算符而不是if:
view.setVisibility(newPosition==StickyHeaderLayoutManager.HeaderPosition.STICKY?view.VISIBLE:view.GONE)
这不是一个活动,它是一个片段,但我会尝试让您知道它不起作用,当我从“可见性不可见”开始,切换到“可见”并返回时,它正在工作,但与状态无关。goneWe将需要更多的代码。您是否在回收器适配器中使用此代码?等等。是的,视图是recyclerView中某个部分的标题,我正在使用库使其变粘,因为棒棒糖和up-setElevation可以正常工作,但在开始变粘时,我想在标题下显示一个阴影视图
parentView.findViewById(R.id.preLollipopShadow);
findViewById(R.id.preLollipopShadow);