Android - ScrollView添加提示Arrow(箭頭)

來源:互聯網
上載者:User

標籤:mystra   android   scrollview   介面   滾動提示   

ScrollView添加提示Arrow(箭頭)


本文地址:http://blog.csdn.net/caroline_wendy


ScrollView的滑動功能中,需要給使用者提示,可以滑動,可以添加兩個箭頭。

定製ScrollView,建立監聽器IScrollStateListener介面:

    private IScrollStateListener scrollStateListener;    public void setScrollStateListener(IScrollStateListener listener) {        scrollStateListener = listener;    }    public interface IScrollStateListener {        void onScrollMostLeft();        void onScrollFromMostLeft();        void onScrollMostRight();        void onScrollFromMostRight();    }


在監聽滑動的時候,調用監聽 滑動事件(onScrollChanged)
    @Override    protected void onScrollChanged(int l, int t, int oldl, int oldt) {        super.onScrollChanged(l, t, oldl, oldt);        if (scrollStateListener != null) {            if (l == 0) {                scrollStateListener.onScrollMostLeft();            } else if (oldl == 0) {                scrollStateListener.onScrollFromMostLeft();            }            int mostRightL = this.getChildAt(0).getWidth()-getWidth();            if (l >= mostRightL) {                scrollStateListener.onScrollMostRight();            } else if (oldl >= mostRightL && l < mostRightL) {                scrollStateListener.onScrollFromMostRight();            }        }    }


在使用 滑動條時,給 監聽事件,傳遞具體事務:
        final ImageView leftArrow = (ImageView)view.findViewById(R.id.doctor_gather_imageview_leftarrow);        final ImageView rightArrow = (ImageView)view.findViewById(R.id.doctor_gather_imageview_rightarrow);        AutoHorizontalScrollView scrollView = (AutoHorizontalScrollView)view.findViewById(R.id.doctor_gather_scrollview);        scrollView.setScrollStateListener(new AutoHorizontalScrollView.IScrollStateListener() {            @Override            public void onScrollMostLeft() {                Log.e(DEBUG + TAG, "滑動條最左面");                leftArrow.setVisibility(View.INVISIBLE);                rightArrow.setVisibility(View.VISIBLE);            }            @Override            public void onScrollFromMostLeft() {                Log.e(DEBUG+TAG, "滑動條離開最左面");                leftArrow.setVisibility(View.VISIBLE);                rightArrow.setVisibility(View.VISIBLE);            }            @Override            public void onScrollMostRight() {                Log.e(DEBUG+TAG, "滑動條最右面");                leftArrow.setVisibility(View.VISIBLE);                rightArrow.setVisibility(View.INVISIBLE);            }            @Override            public void onScrollFromMostRight() {                Log.e(DEBUG+TAG, "滑動條離開最右面");                leftArrow.setVisibility(View.VISIBLE);                rightArrow.setVisibility(View.VISIBLE);            }        });


即可。
參考:http://stackoverflow.com/questions/9062227/how-to-set-images-for-scrollview-instead-of-fading-edges





Android - ScrollView添加提示Arrow(箭頭)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.