关于View的ScrollTo, getScrollX 和 getScrollY

下载地址:源码

当利用

由于

请看下图:

图上面,褐色的框,其实就是我们眼睛看到的手机界面,就是一个窗口。

而绿色的长方体呢,就是一块可以左右拉动的幕布啦,其实也就是我们要显示在窗口上面的内容,它其实是可以很大的,大到无限大,只是没在窗口中间的,所以我们就看不到。

而幕布在窗口左边界时候的值了,而幕布上面哪个点是原点(

所以当我们将幕布往右推动的时候,幕布在窗口左边界的值就会在

下面以一个实际例子来看一下。

我们在一个

<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android=""android:layout_width="match_parent"android:layout_height="match_parent"android:background="#000000"android:orientation="vertical"> <TextViewandroid:id="@+id/textView"android:textColor="#FFFFFF"android:textSize="16sp"android:layout_height="wrap_content"android:layout_width="match_parent"/><ImageViewandroid:id="@+id/scrollImageView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@drawable/scroll_testing"android:contentDescription="TestingScrolling"/><TextViewandroid:id="@+id/textViewToRight"android:textColor="#FFFFFF"android:textSize="16sp"android:layout_height="wrap_content"android:layout_width="match_parent"/><ImageViewandroid:id="@+id/scrollImageViewToRight"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@drawable/scroll_testing"android:contentDescription="TestingScrolling"/><TextViewandroid:id="@+id/textViewToLeft"android:textColor="#FFFFFF"android:textSize="16sp"android:layout_height="wrap_content"android:layout_width="match_parent"/><ImageViewandroid:id="@+id/scrollImageViewToLeft"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@drawable/scroll_testing"android:contentDescription="TestingScrolling"/></LinearLayout>

然后我们在如下:

publicclassScrollActivityextendsActivity{ protectedvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.scroll_layout); ImageViewimageView=(ImageView)findViewById(R.id.scrollImageView); TextViewtextView=(TextView)findViewById(R.id.textView); textView.setText("getScrollX()="+imageView.getScrollX()); ImageViewimageViewToRight=(ImageView)findViewById(R.id.scrollImageViewToRight); imageViewToRight.scrollTo(-100,0); TextViewtextViewToRight=(TextView)findViewById(R.id.textViewToRight); textViewToRight.setText("getScrollX()="+imageViewToRight.getScrollX()); ImageViewimageViewToLeft=(ImageView)findViewById(R.id.scrollImageViewToLeft); imageViewToLeft.scrollTo(100,0); TextViewtextViewToLeft=(TextView)findViewById(R.id.textViewToLeft); textViewToLeft.setText("getScrollX()="+imageViewToLeft.getScrollX()); }}

下面是运行后的效果

可以看到,正如上面所说的,,向右滚动的时候,等于是把背后的幕布向右推动,使得没有内容的幕布(

下载地址:源码

版权声明:本文为博主原创文章,未经博主允许不得转载。

要克服生活的焦虑和沮丧,得先学会做自己的主人

关于View的ScrollTo, getScrollX 和 getScrollY

相关文章:

你感兴趣的文章:

标签云: