Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/339.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/229.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 在同一颜色背景上滚动时,如何更改textView颜色?_Java_Android - Fatal编程技术网

Java 在同一颜色背景上滚动时,如何更改textView颜色?

Java 在同一颜色背景上滚动时,如何更改textView颜色?,java,android,Java,Android,我有一个文本视图,它的颜色是白色的,但是当我滚动这个文本视图时,它会出现在具有相同颜色的imageView上面。 如果我滚动文本视图,它进入了暗图像视图的范围,文本将不会显示,因为它的颜色与imageView相同,我想在文本视图位于imageView上方时更改文本视图的颜色 这不是你问题的确切答案,但可能是你问题的解决方案 对TextView具有50%透明度的白色背景。这样,它在白色部分看起来会相同,在蓝色部分会使文本可读。我像您一样使用了ScrollView,并在addOnScrollChan

我有一个文本视图,它的颜色是白色的,但是当我滚动这个文本视图时,它会出现在具有相同颜色的imageView上面。 如果我滚动文本视图,它进入了暗图像视图的范围,文本将不会显示,因为它的颜色与imageView相同,我想在文本视图位于imageView上方时更改文本视图的颜色


这不是你问题的确切答案,但可能是你问题的解决方案


对TextView具有50%透明度的白色背景。这样,它在白色部分看起来会相同,在蓝色部分会使文本可读。

我像您一样使用了ScrollView,并在addOnScrollChangedListener中检索了Y坐标 在Y坐标中达到特定数字后,我将更改所需的字体颜色,并在返回到原始坐标后,将原始颜色返回给他

    //Definition of Object

    ScrollView scrollView ;
    TextView textView ;

      scrollView = findViewById(R.id.scrollView);
      textView = findViewById(R.id.tx);
使用滚动视图的方法。这是 例如:

    scrollView.getViewTreeObserver().addOnScrollChangedListener(new ViewTreeObserver.OnScrollChangedListener() {
        @Override
        public void onScrollChanged() {

            int scrollY = scrollView.getScrollY(); // vertical scroll position
            int scrollX = scrollView.getScrollX(); // horizontal scroll position

            if (scrollY <= 100 || scrollY == 150)
                textView.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.blue));

            else if (scrollY >= 151)
                textView.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.red));

        }
    });
scrollView.getViewTreeObserver().addOnScrollChangedListener(新的ViewTreeObserver.OnScrollChangedListener(){
@凌驾
public void onScrollChanged(){
int scrollY=scrollView.getScrollY();//垂直滚动位置
int scrollX=scrollView.getScrollX();//水平滚动位置
如果(滚动=151)
setTextColor(ContextCompat.getColor(getApplicationContext(),R.color.red));
}
});
注意:为了清晰起见,这些数字仅在比较中可用 例如。你可以根据需要更换


多做点clear@SauravKumar现在编辑,如果我滚动文本视图,它进入了暗图像视图的范围,文本将不会显示,因为它的颜色与imageView相同,当textViewcolor位于imageView上方时,我想更改它。您如何滚动textview?我认为在imageView上方滚动textview不是一个好主意,您确定这是您想要的吗?@SauravKumar它位于一个嵌套的滚动视图中,包含其他元素,活动背景从顶部开始有彩色部分。