去年年底開始獨立開發了一個完整的項目,期間老板需求改了無數,如今總算接近尾聲。現開始開發一個新的項目,在此之前,先整理一下之前所用到的一些實用的控件或組件吧。
1.下拉刷新,上拉加載控件----------TwinklingRefreshLayout
對于一個android開發者來說,這樣的一個控件應該是必不可少的。之前也有找過一些其他的加載控件,但要么是只有刷新的功能,要么只有加載的功能。都不是很符合我的需求。直到看到了這個控件,堪稱完美。
主要特性:
- 1.支持recycleView、ListView、ScrollView、GridView、webView等。
- 2.支持純凈的越界回彈效果,類似ios自帶的越界回彈動畫。相信也有不少同學會為了實現這個效果而再去網上找資料尋找實現方式。
- 3.TwinklingRefreshLayout里面自帶了幾種常用的刷新或加載動畫,沒有特殊要求的同學可以直接使用就是。如果需要實現特殊的加載動畫效果,TwinklingRefreshLayout提供IHeadView,IBottomView接口。
githup地址: https://github.com/lcodecorex/TwinklingRefreshLayout
詳細介紹:http://www.lxweimin.com/p/5ed4813b86cf
2.仿微信的圖片選擇器----------PhotoPicker
記得之前有一個同學問我可不可以幫他寫一個圖片選擇器的控件,我有點懵。我可沒那么厲害,可以給你寫出一個這樣的控件來。然后我給他推薦了這個組件。githup上點贊兩千顆星,所以還是很強大的。
使用方法:
1.添加依賴
compile 'me.iwf.photopicker:PhotoPicker:0.9.5@aar'
2.需要在清單文件中注冊PhotoPickerActivity和PhotoPagerActivity
<activity android:name="me.iwf.photopicker.PhotoPickerActivity"
android:theme="@style/Theme.AppCompat.NoActionBar"
/>
<activity android:name="me.iwf.photopicker.PhotoPagerActivity"
android:theme="@style/Theme.AppCompat.NoActionBar"/>
3.使用
PhotoPicker.builder().setPhotoCount(9).setGridColumnCount(3).start(this, requestCode);
4.選擇后的回調
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
ArrayList<String> imagesPath = data.getStringArrayListExtra(PhotoPicker.KEY_SELECTED_PHOTOS);
//根據上一步傳過來的requestCode的值來判斷為哪一個的返回結果
}
}
3.ViewPager的指示器動畫----------CircleIndicator
我還是比較喜歡那種除了本身自帶一些基礎動畫效果,還能實現自定義的一些效果,比較靈活。
使用方法:
**1.添加依賴 **
compile 'me.relex:circleindicator:1.2.2@aar'
2.在xml文件中添加CircleIndicator
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v4.view.ViewPager
android:background="@color/lineColor"
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="@dimen/home_viewPager_hight"/>
<me.relex.circleindicator.CircleIndicator
android:id="@+id/circleindicator"
app:ci_drawable="@drawable/icon_dot_per"
app:ci_drawable_unselected="@drawable/icon_dot"
android:layout_gravity="bottom|right"
android:layout_marginBottom="20dp"
android:layout_marginRight="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</FrameLayout>
3.將ViewPager與CircleIndicator關聯
circleindicator.setViewPager(viewPager);
特別想介紹的兩個屬性:
- app:ci_drawable : 當前被選中的指示器圖片
- app:ci_drawable_unselected:未被選中的指示器圖片
就是因為這兩個屬性才喜歡上這個控件!
4.點贊動畫效果的自定義View----------goodview
其實一開始是沒有想過說在點贊的時候加上一個動畫效果的,不過做項目的時候看到ios做了一個點贊的動畫效果。總不能ios的做了動畫效果,但android就死板板的換一下圖片就是吧,顯得我技術多菜(雖然本來就菜,但總不能讓老板感覺差距太大)。于是在網上找到了這個控件,覺得還是挺實用的。
使用方法:
1.添加依賴
compile 'com.wx.goodview:goodview:1.0.0'
2.java
final GoodView goodView = new GoodView(this);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
goodView.setText("+1");
goodView.show(v);
}
});
githup地址:https://github.com/venshine/GoodView
5.圓形圖片控件----------circleimageview
這個已經是個要被推爛了的控件了,網上一搜都是好多關于它的使用方法什么的。只能證明人家真的很實用。
放鏈接:
githup地址:https://github.com/hdodenhof/CircleImageView
詳細介紹:http://blog.csdn.net/zhoubin1992/article/details/47258639
本文不定期更新中。。。。