-
不錯蠻好的查看全部
-
我可以把筆記顯示在哪里查看全部
-
哦哦哦查看全部
-
/** *容器移動的條件,講到的三個條件,還需要考慮一下最后一個位置,所以根據(jù)所講的內(nèi)容,自己改進了一下,自認為更符合。 */ if (position >= mTabVisibleCount - 2 && offset > 0 && getChildCount() > mTabVisibleCount) { //容器移動的距離 if(mTabVisibleCount==1&&position<getChildCount()-1){//只有一個可見的tab this.scrollTo((int) (position * tabWidth + tabWidth * offset), 0); }else if(mTabVisibleCount==2&&position<getChildCount()-2){//只有兩個可見tab this.scrollTo((int) (position * tabWidth + tabWidth * offset), 0); }else if (position < getChildCount() - 2) { this.scrollTo((int) ((position - (mTabVisibleCount - 2)) * tabWidth + tabWidth * offset), 0); } }查看全部
-
監(jiān)聽滾動查看全部
-
mPint.setPathEffect(new CornerPathEffect(3));//繪制圓角 mPint-畫筆查看全部
-
List<String> mString = Array.asList("內(nèi)容1","內(nèi)容2");,直接初始化String數(shù)組查看全部
-
高亮參考代碼: private void highLightTabTitle(int pos) { for (int i = 0; i < getChildCount(); i ++) { TextView tv = (TextView) getChildAt(i); if (i == pos) { tv.setTextColor(COLOR_TEXT_HIGHLIGHT); } else { tv.setTextColor(COLOR_TEXT_NORNAL); } } }查看全部
-
這個地方有點奇怪。 為什么不直接設(shè)置寬度?而是先設(shè)置了MATCH_PREANT,然后又修改為可見的寬度。 只有一個答案:作者沒走心。查看全部
-
說實在的,我不清楚這里為什么要-2,假設(shè)顯示4屏,共有6屏,再第三屏就移動也挺奇怪的。分享一下我自己寫的方便理解的移動方法: // 容器移動,當tab處于可見最后一個position時 //Log.e("TAG", "tabWidth=" + tabWidth + ", visibleCount=" + mTableVisibleCount + ", position=" + position); if (getChildCount() > mTableVisibleCount && positionOffset > 0 && position >= mTableVisibleCount - 1) { Log.e("TAG", "scroll by x=" + (tabWidth * positionOffset)); this.scrollTo((int) ((position + 1 - mTableVisibleCount) * tabWidth + tabWidth * positionOffset) ,0); }查看全部
-
我猜測這里不使用scrollBy是有原因的。因為scroll方法會被多次調(diào)用,導致每次的偏移量累加,會出問題。查看全部
-
這里兩點需要說明: 1. 獲取屏幕寬度的方法不需要那么麻煩,具體代碼如下: DisplayMetrics metrics = getResources().getDisplayMetrics(); int mScreenWidth = metrics.widthPixels; 2. 一定不要忘記,需要把LayoutParams的weight置為0,只設(shè)置寬度是沒用的。查看全部
-
哦哦哦查看全部
-
帶截圖的筆記保存查看全部
-
哈哈哈查看全部
舉報
0/150
提交
取消