仿京東店鋪詳情界面

Scrollviewfresh加載數(shù)據(jù) 嵌套NonScrollListView甸祭,NonScrollListView item中包含NonScrollGridView

這個(gè)布局中最外層用的是HeaderViewPager忿晕,大概的效果就是京東店鋪詳情


Screenshot_2017-11-15-17-04-47_com.dongmango.gou2.png

大致效果是這樣,向上滑動(dòng)奕枢,Tablayout能繼續(xù)選擇fragment ,
起初覺(jué)得這樣嵌套好幾層布局會(huì)出問(wèn)題,最后寫(xiě)完,發(fā)現(xiàn)并沒(méi)有問(wèn)題,重寫(xiě)的Listview

 @Override
    public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

        int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
                MeasureSpec.AT_MOST);
        super.onMeasure(widthMeasureSpec, expandSpec);
    }

重寫(xiě)的Gridview

 @Override
    public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

        int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
                MeasureSpec.AT_MOST);
        super.onMeasure(widthMeasureSpec, expandSpec);
    }

    //通過(guò)重新dispatchTouchEvent方法來(lái)禁止滑動(dòng)
    @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        // TODO Auto-generated method stub
        if (ev.getAction() == MotionEvent.ACTION_MOVE) {
            return true;//禁止Gridview進(jìn)行滑動(dòng)
        }
        return super.dispatchTouchEvent(ev);
    }

然后就是下拉能加載的Scrollview

public class Scrollviewfresh extends ScrollView {
    private OnScrollToBottomListener onScrollToBottom;

    public Scrollviewfresh(Context context) {
        super(context);
        // TODO Auto-generated constructor stub
    }

    public Scrollviewfresh(Context context, AttributeSet attrs) {
        super(context, attrs);
        // TODO Auto-generated constructor stub
    }

    public Scrollviewfresh(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        // TODO Auto-generated constructor stub
    }

    @Override
    protected void onOverScrolled(int scrollX, int scrollY, boolean clampedX,
                                  boolean clampedY) {
        // TODO Auto-generated method stub
        super.onOverScrolled(scrollX, scrollY, clampedX, clampedY);
        if (scrollY != 0 && null != onScrollToBottom) {
            onScrollToBottom.onScrollBottomListener(clampedY);
        }
    }

    public void setOnScrollToBottomLintener(OnScrollToBottomListener listener) {
        onScrollToBottom = listener;
    }

    public interface OnScrollToBottomListener {
        public void onScrollBottomListener(boolean isBottom);
    }

這個(gè)下拉加載的scrollview 姑荷,需要再下拉的時(shí)候做下判斷,

 svDisplay.setOnScrollToBottomLintener(new Scrollviewfresh.OnScrollToBottomListener() {
            @Override
            public void onScrollBottomListener(boolean isBottom) {
                isboolean = isBottom + "";
                if (isboolean.equals("true") && isOk.equals("false")) {
                    isOk = "true";
                    page++;
                    httpList();
                }
            }
        });

通過(guò)兩個(gè)boolean來(lái)做判斷锣枝,第一個(gè)isboolean判斷是否滑動(dòng)到最底部厢拭,第二個(gè)就是用來(lái)判斷網(wǎng)絡(luò)請(qǐng)求是否成功,否則會(huì)一直加載網(wǎng)絡(luò)請(qǐng)求撇叁,導(dǎo)致數(shù)據(jù)重復(fù),

HttpJsonUtil.getShop_New_Goods(shop_id, page + "", 10001, new HttpManager.OnHttpResponseListener() {
            @Override
            public void onHttpResponse(int requestCode, String resultJson, Exception e) {
                if (0 == GetJsonUtil.getResponseCode(resultJson)) {
                    String json = GetJsonUtil.getResponseData(resultJson);
                    bindListData(JSON.parseArray(json, ShopNewGoodsBean.class));
                    if (JSON.parseArray(json, ShopDetailGoodsBean.class).size() == 0) {//沒(méi)有更多數(shù)據(jù)了畦贸,不能繼續(xù)加載
                        isboolean = "false";
                        isOk = "true";
                    } else {
                        isboolean = "false";
                        isOk = "false";
                    }

                } else {
                    showShortToast(GetJsonUtil.getResponseError(resultJson));
                }

至此陨闹,基本上的一個(gè)多嵌套布局,加上一個(gè)下拉加載已經(jīng)做完了薄坏,具體的填充adapter趋厉,就不貼上去了

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市胶坠,隨后出現(xiàn)的幾起案子君账,更是在濱河造成了極大的恐慌,老刑警劉巖沈善,帶你破解...
    沈念sama閱讀 217,542評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件乡数,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡闻牡,警方通過(guò)查閱死者的電腦和手機(jī)净赴,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)罩润,“玉大人玖翅,你說(shuō)我怎么就攤上這事。” “怎么了金度?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,912評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵应媚,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我猜极,道長(zhǎng)中姜,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,449評(píng)論 1 293
  • 正文 為了忘掉前任魔吐,我火速辦了婚禮扎筒,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘酬姆。我一直安慰自己嗜桌,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布辞色。 她就那樣靜靜地躺著骨宠,像睡著了一般。 火紅的嫁衣襯著肌膚如雪相满。 梳的紋絲不亂的頭發(fā)上层亿,一...
    開(kāi)封第一講書(shū)人閱讀 51,370評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音立美,去河邊找鬼匿又。 笑死,一個(gè)胖子當(dāng)著我的面吹牛建蹄,可吹牛的內(nèi)容都是我干的碌更。 我是一名探鬼主播,決...
    沈念sama閱讀 40,193評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼洞慎,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼痛单!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起劲腿,我...
    開(kāi)封第一講書(shū)人閱讀 39,074評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤旭绒,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后焦人,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體挥吵,經(jīng)...
    沈念sama閱讀 45,505評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評(píng)論 3 335
  • 正文 我和宋清朗相戀三年垃瞧,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蔫劣。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,841評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡个从,死狀恐怖脉幢,靈堂內(nèi)的尸體忽然破棺而出歪沃,到底是詐尸還是另有隱情,我是刑警寧澤嫌松,帶...
    沈念sama閱讀 35,569評(píng)論 5 345
  • 正文 年R本政府宣布沪曙,位于F島的核電站,受9級(jí)特大地震影響萎羔,放射性物質(zhì)發(fā)生泄漏液走。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評(píng)論 3 328
  • 文/蒙蒙 一贾陷、第九天 我趴在偏房一處隱蔽的房頂上張望缘眶。 院中可真熱鬧,春花似錦髓废、人聲如沸巷懈。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,783評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)顶燕。三九已至,卻和暖如春冈爹,著一層夾襖步出監(jiān)牢的瞬間涌攻,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,918評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工频伤, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留恳谎,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,962評(píng)論 2 370
  • 正文 我出身青樓憋肖,卻偏偏與公主長(zhǎng)得像惠爽,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子瞬哼,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,116評(píng)論 25 707
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)、插件租副、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,103評(píng)論 4 62
  • 愛(ài)情就是一場(chǎng)修行坐慰,兩個(gè)陌生的人在愛(ài)的牽絆下有了情,然后就有了更多以后的故事用僧。
    王子真心閱讀 112評(píng)論 0 0
  • 選擇對(duì)孩子有效的管教方式 假如真的需要管教孩子责循,那么你可以采用哪些方式來(lái)懲罰他糟港,這一部分要看你自己的脾氣性格,另一...
    豬媽媽愛(ài)奮斗閱讀 532評(píng)論 0 2
  • 關(guān)于作者 弗朗西斯·克里克是英國(guó)著名的生物學(xué)家院仿、物理學(xué)家和神經(jīng)科學(xué)家秸抚。他因?yàn)楹驼材匪埂の稚餐l(fā)現(xiàn)了 DNA速和,也就...
    蔚成閱讀 6,640評(píng)論 0 0