開源庫【ViewPagerIndicator】配合ViewPager使用的圓點指示器,圓點隨滑動而移動
效果演示
華為手機上的時鐘
ViewPagerIndicator
簡單描述
靈感來自於華為手機上的多款自帶APP,都有這種圓點指示器(如圖1的時鐘),感覺很6,就仿造弄了個庫出來。
配合ViewPager使用,每滑到另一頁並停止時,隨機改變圓點顏色,內建了5種顏色。
如果頁面沒變,停止時顏色不會改變,圓點的顏色也可以自行設定.
技術分析
ViewPager滑動過程分析
既然是配合ViewPager
使用的,首先得清楚滑動時都發生了啥,那我們就新增如下的列印程式碼:
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
Log.d("onPageScrolled", "position =" + position + " \n offset =" + positionOffset);
}
@Override
public void onPageSelected(int position) {
Log.d("onPageSelected" , String.valueOf(position));
}
@Override
public void onPageScrollStateChanged(int state) {
switch (state) {
case ViewPager.SCROLL_STATE_DRAGGING:
Log.d("onPageScrollStateChanged", "SCROLL_STATE_DRAGGING" );
break;
case ViewPager.SCROLL_STATE_IDLE:
Log.d("onPageScrollStateChanged", "SCROLL_STATE_IDLE");
break;
case ViewPager.SCROLL_STATE_SETTLING:
Log.d("onPageScrollStateChanged", "SCROLL_STATE_SETTLING");
break;
default:
break;
}
}
});
接著各種滑動,看看都輸出了啥
先是滑到右邊的頁面
第1頁滑到第2頁
12-23 21:17:45.360 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_DRAGGING
12-23 21:17:45.360 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.05277778
12-23 21:17:45.370 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.11111111
12-23 21:17:45.390 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.18472221
12-23 21:17:45.410 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.27222222
12-23 21:17:45.420 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.37222221
12-23 21:17:45.430 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.37777779
12-23 21:17:45.430 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_SETTLING
12-23 21:17:45.430 12033-12033/sbingo.com.viewpagerindicator D/onPageSelected: 1
12-23 21:17:45.440 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.4513889
12-23 21:17:45.460 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.57916665
12-23 21:17:45.470 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.6805556
12-23 21:17:45.490 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.76666665
12-23 21:17:45.500 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.82916665
12-23 21:17:45.520 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.88055557
12-23 21:17:45.540 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.92083335
12-23 21:17:45.560 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.9458333
12-23 21:17:45.570 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.9638889
12-23 21:17:45.590 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.9777778
12-23 21:17:45.600 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.9875
12-23 21:17:45.620 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.9930556
12-23 21:17:45.640 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.99583334
12-23 21:17:45.650 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.9986111
12-23 21:17:45.670 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.0
12-23 21:17:45.780 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_IDLE
第2頁滑到第3頁
12-23 21:19:13.630 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_DRAGGING
12-23 21:19:13.630 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.018055558
12-23 21:19:13.650 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.049999952
12-23 21:19:13.660 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.0916667
12-23 21:19:13.680 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.14444447
12-23 21:19:13.700 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.20277774
12-23 21:19:13.710 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.27222228
12-23 21:19:13.730 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.35416663
12-23 21:19:13.750 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.44861114
12-23 21:19:13.750 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_SETTLING
12-23 21:19:13.750 12033-12033/sbingo.com.viewpagerindicator D/onPageSelected: 2
12-23 21:19:13.750 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.45694447
12-23 21:19:13.760 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.5569445
12-23 21:19:13.780 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.6541667
12-23 21:19:13.800 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.73333335
12-23 21:19:13.810 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.79999995
12-23 21:19:13.830 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.8527777
12-23 21:19:13.840 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.89305556
12-23 21:19:13.860 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.92361116
12-23 21:19:13.880 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.94722223
12-23 21:19:13.890 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.9638889
12-23 21:19:13.910 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.97638893
12-23 21:19:13.930 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.98472226
12-23 21:19:13.940 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.9916667
12-23 21:19:13.960 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.9944445
12-23 21:19:13.980 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.9972222
12-23 21:19:13.990 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.9986111
12-23 21:19:14.010 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =2
offset =0.0
12-23 21:19:14.140 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_IDLE
接著往回滑到左邊的頁面
第3頁滑到第2頁
12-23 21:21:43.460 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_DRAGGING
12-23 21:21:43.460 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.9708333
12-23 21:21:43.480 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.9319445
12-23 21:21:43.490 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.8833333
12-23 21:21:43.510 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.8152778
12-23 21:21:43.520 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.7513889
12-23 21:21:43.520 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_SETTLING
12-23 21:21:43.520 12033-12033/sbingo.com.viewpagerindicator D/onPageSelected: 1
12-23 21:21:43.530 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.73472226
12-23 21:21:43.540 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.60833335
12-23 21:21:43.560 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.4944445
12-23 21:21:43.570 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.4027778
12-23 21:21:43.590 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.32222223
12-23 21:21:43.610 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.25833333
12-23 21:21:43.620 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.20138884
12-23 21:21:43.640 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.1569444
12-23 21:21:43.660 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.122222185
12-23 21:21:43.670 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.093055606
12-23 21:21:43.690 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.06805551
12-23 21:21:43.700 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.049999952
12-23 21:21:43.720 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.036111116
12-23 21:21:43.740 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.024999976
12-23 21:21:43.750 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.01666665
12-23 21:21:43.770 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.01111114
12-23 21:21:43.790 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.006944418
12-23 21:21:43.800 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.0041667223
12-23 21:21:43.820 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.0027778149
12-23 21:21:43.840 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.0013889074
12-23 21:21:43.850 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =1
offset =0.0
12-23 21:21:44.000 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_IDLE
第2頁滑到第1頁
12-23 21:22:44.870 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_DRAGGING
12-23 21:22:44.870 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.9791667
12-23 21:22:44.880 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.9513889
12-23 21:22:44.900 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.8972222
12-23 21:22:44.910 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.80277777
12-23 21:22:44.930 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.6875
12-23 21:22:44.930 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_SETTLING
12-23 21:22:44.930 12033-12033/sbingo.com.viewpagerindicator D/onPageSelected: 0
12-23 21:22:44.950 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.53333336
12-23 21:22:44.960 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.40138888
12-23 21:22:44.980 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.29722223
12-23 21:22:45.000 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.21111111
12-23 21:22:45.010 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.15
12-23 21:22:45.030 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.09861111
12-23 21:22:45.050 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.06666667
12-23 21:22:45.060 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.041666668
12-23 21:22:45.080 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.02638889
12-23 21:22:45.090 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.015277778
12-23 21:22:45.110 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.008333334
12-23 21:22:45.130 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.004166667
12-23 21:22:45.140 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.0013888889
12-23 21:22:45.160 12033-12033/sbingo.com.viewpagerindicator D/onPageScrolled: position =0
offset =0.0
12-23 21:22:45.270 12033-12033/sbingo.com.viewpagerindicator D/onPageScrollStateChanged: SCROLL_STATE_IDLE
滑動結果分析
看了以上的輸出結果後,我們可以得出以下的滑動流程:
手指開始滑動的瞬間回撥
onPageScrollStateChanged:SCROLL_STATE_DRAGGING
,”ViewPager”說:我狀態變了,要開始滑動啦~!接著在滑動中一直回撥
onPageScrolled
,其中的position
是當前兩個可見頁面中左邊一頁的位置值,offset
是當前滑動位置距離position
的距離,取值範圍在0-1之間。在滑動中的某個瞬間回撥
onPageScrollStateChanged: SCROLL_STATE_SETTLING
,”ViewPager”說:我要設定新的頁面啦~!話音剛落,又回調了onPageSelected
,設定好了它預想的新頁面。But,如果又滑到原始的頁面並不會再回調此處,這種情況下最終的頁面就會和onPageSelected
中的頁面不一致。~也就是說這裡只會回撥一次!接著繼續在滑動中回撥
onPageScrolled
,和2中一樣了。最後一次回到
onPageScrolled
,此時position
為新頁面的位置值,offset
為0。最終滑到新的一頁,回撥
onPageScrollStateChanged: SCROLL_STATE_IDLE
,”ViewPager”說:滑得好累啊,終於到目的地啦~我要停下來歇息一會兒了!以上就是一次完整的滑動過程。
圓點x座標分解
現在我們來分析怎樣繪製圓點,很簡單,知道圓心座標+半徑就可以了。
半徑我取view高度的1/3,圓心y座標必然是view高度1/2,重點就在於圓心的x座標了。
看下面我畫的圓點位置圖來分析下x座標:
假設共有n個可滑動的頁面,不滑動時圓點應該在圖中1、2、……n其中一個位置上,即標題的正中間。
兩個相鄰位置的距離為width/n
。
滑動時可能在1-2之間的X位置,2-3之間的Y位置。
這裡我將x座標的計算分為兩部分:currentStartX
和offsetX
,由它們相加可以得到x座標。
currentStartX
以1、2、……等位置為計算依據,停止滑動時,offsetX
為0。
初始位置1為startX
。
相關推薦
開源庫【ViewPagerIndicator】配合ViewPager使用的圓點指示器,圓點隨滑動而移動
效果演示 華為手機上的時鐘 ViewPagerIndicator 簡單描述 靈感來自於華為手機上的多款自帶APP,都有這種圓點指示器(如圖1的時鐘),感覺很6,就仿造弄了個庫出來。 配合ViewPager使用,每滑到另一頁並停止時,隨機改變
開源庫【FreeRadioGroup】--淡出、自由拖動、自動貼邊,類似於蘋果的虛擬輔助按鈕
*本篇文章已授權微信公眾號 guolin_blog (郭霖)獨家釋出 *本篇文章已授權微信公眾號 guolin_blog (郭霖)獨家釋出 *本篇文章已授權微信公眾號 guolin_blog (郭霖)獨家釋出 demo演示 簡單描述 這個
輕量高效的開源JavaScript外掛和庫 【轉】
圖片 baguetteBox.js - 是一個簡單易用的響應式影象燈箱效果指令碼。demo Lightgallery.js - 是一個功能齊全的JavaScript影象燈箱外掛。demo viewerjs - 是一個影象預覽外掛。demo c
在Oracle Database 12.1 中異機遷移恢復數據庫【實戰】
異機恢復 oracle12c restore recover 平臺環境:源OS:Oracle Linux 7.3源DB:Oracle Database 12.1.0.2 目標OS:Oracle Linux 7.3目標DB:Oracle Database 12.1.0.2一、準備工作1、查詢當前
C# winform DevExpress上傳圖片到數據庫【轉】
選擇圖片 filter 技術 filepath iss 二進制格式 img 變量 HERE 實現功能如下圖: 註明:此文使用的是DevExpress控件,winform 原生控件也是一樣使用方法。 1.點擊選擇圖片按鈕,功能為通過對話框選擇要上傳的文件,並將該文
C++標準庫和標準模板庫【轉】
(轉自:https://blog.csdn.net/rl529014/article/details/51154798) C++強大的功能來源於其豐富的類庫及庫函式資源。C++標準庫的內容總共在50個標準標頭檔案中定義。 在C++開發中,要儘可能地利用標準庫完成。這樣做的直接好處包括
中文情感分析語料庫【下載】
轉自部落格:https://blog.csdn.net/noter16/article/details/75340354 http://blog.leanote.com/post/doubleseven/%E4%B8%AD%E6%96%87%E6%83%85%E6%84%9F%E5%88%86%
採用dlopen、dlsym、dlclose載入動態連結庫【總結】
https://blog.csdn.net/qq_19399235/article/details/62579386 https://blog.csdn.net/shaosunrise/article/details/81161064 https://www.cnblogs.com/
【ServiceComb】紮實做微服務,認真做開源
5 問ServiceComb 微服務 ServiceComb 是誰? ServiceComb取名寓意蜂巢,是微服務開源專案,Apache軟體基金會孵化專案,其源自ServiceComb商業版華為雲微服務引擎
Java基礎類庫【Java】
Java基礎類庫是Java中已經定義好的標準類庫,它是Java程式設計的API,也是Java語言的重要組成部分,它可以幫助開發者快捷、方便地開發Java程式。在Java程式設計語言中,將這些類按照不同的功能劃分成了不同的集合,每個集合稱為一個包(Package),也叫做類庫。
request庫 【Python】【親測好用】安裝第三方包報錯:AttributeError:'module' object has no attribute 'main'
0x00 環境簡介和安裝 我這裡使用的是python2.7版本,直接使用pycharm2018這款IDE。 首先在pycharm中配置一下virtualenv環境,virtualenv是一個建立獨立Python執行環境的工具,為一個應用建立一套“隔離”的Python執行環境。 建立new
收集了很多音樂播放器類的Android專案原始碼,非常不錯的開源專案【轉】
JieCaoVideoPlayer立志成為Android平臺使用最廣泛的視訊播放控制元件http://neast.cn/forum.php?mod=viewthread&tid=61610&fromuid=5 OPlayer Android平臺基於Vitamio的開源播放器http://ne
【android】解決Viewpager設定高度為wrap_content無效的方法
今天發現設定viewpager高度為wrap_content時並沒作用,stackoverflow給出瞭解決方案,就是自定義viewpager,重寫onMesure()方法: public class WrapContentHeightViewPager extends
10款Github上最火爆的國產開源專案【2014】
衡量一個開源產品好不好,看看產品在Github的Star數量就知道了。由此可見,Github已經淪落為開源產品的“大眾點評”了。 一個開源產品希望快速的被開發者知道、快速的獲取反饋,放到Github上面就可以了。 Github上有無數大牌產品:Bootstrap、JQeur
【NLP】大資料之行,始於足下:談談語料庫知多少
作者:白寧超 2016年7月20日13:47:51 摘要:大資料發展的基石就是資料量的指數增加,無論是資料探勘、文字處理、自然語言處理還是機器模型的構建,大多都是基於一定量的資料,資料規模達到一定程度,採用基於規則方法或者概率統計學的方法進行模型構建,感興趣知識的獲取才更有意義。那麼,是不是資料足
最全的前端工程師面試題庫【轉載】
一些開放性題目 1.自我介紹:除了基本個人資訊以外,面試官更想聽的是你與眾不同的地方和你的優勢。 2.專案介紹 3.如何看待前端開發? 4.平時是如何學習前端開發的? 5.未來三到五年的規劃是怎樣的? position的值, relative
10 個著名的 JavaScript 庫【轉】
JavaScript 是 Web 開發與設計中不可或缺的東西,不管是一個簡單的網頁還是一個專業的站點,也不管你是高手還是菜鳥,如今 JavaScript 庫越來越強大,可以勝任許多複雜的工作,然而同時,人們在眾多 JavaScript 庫面前又覺得無所適從,本文,我們將使
Qt開發: Qt使用SDL2開發庫 -- -- 【圖文並茂】
1 下載SDL2 2 解壓SDL2.0 3 Qt5專案檔案新增 INCLUDEPATH+=E:/FFMPEG/SDL2/include LIBS+=-LE:/FFMPEG/SDL2/l
【mysql】service mysql start出錯,mysql啟動不了,解決mysql: unrecognized service錯誤
開機 init.d starting 設置 tin 執行 rest root lan service MySQL start出錯,mysql啟動不了,解決mysql: unrecognized service錯誤的方法如下: [[email protected]/
【轉】虛擬機克隆之後,網卡名稱從eth0變成eth1之後的解決辦法
ati persist 管理設備 物理 rul source pro 新的 bar 使用VMware安裝了CentOS虛擬機,克隆之後使用service network restart指令來重新啟動網絡服務時,會看到有eth0網卡不存在的提示。 出現這種現象的原因是,很