SpinMenu
項目位址: SpinMenu
簡介:輪盤旋轉樣式的 Fragment 菜單控件,讓 Fragment 切換更加炫酷
輪盤樣式的 Fragment 菜單選擇控件。有沒有很炫?
Preview
、
Usage
導入 smlibrary module, 或者直接拷貝 com.hitomi.smlibrary 包下所有 java 檔案到您的項目中
布局檔案中:
<com.hitomi.smlibrary.SpinMenu
android:id="@+id/spin_menu"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:hint_text_color="#FFFFFF"
app:hint_text_size="14sp"
app:scale_ratio="0.36"
tools:context="com.hitomi.spinmenu.MainActivity">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#333a4a"></FrameLayout>
</com.hitomi.smlibrary.SpinMenu>
SpinMenu 中可以嵌套其它布局,來繪制您自己的背景
Activity 中:
spinMenu = (SpinMenu) findViewById(R.id.spin_menu);
// 設定頁面标題
List<String> hintStrList = new ArrayList<>();
hintStrList.add("熱門資訊");
hintStrList.add("實時新聞");
hintStrList.add("我的論壇");
hintStrList.add("我的資訊");
hintStrList.add("走走看看");
hintStrList.add("閱讀空間");
hintStrList.add("聽聽唱唱");
hintStrList.add("系統設定");
spinMenu.setHintTextStrList(hintStrList);
spinMenu.setHintTextColor(Color.parseColor("#FFFFFF"));
spinMenu.setHintTextSize(14);
// 設定啟動手勢開啟菜單
spinMenu.setEnableGesture(true);
// 設定頁面擴充卡
final List<Fragment> fragmentList = new ArrayList<>();
fragmentList.add(Fragment1.newInstance());
fragmentList.add(Fragment2.newInstance());
fragmentList.add(Fragment3.newInstance());
fragmentList.add(Fragment4.newInstance());
fragmentList.add(Fragment5.newInstance());
fragmentList.add(Fragment6.newInstance());
fragmentList.add(Fragment7.newInstance());
fragmentList.add(Fragment8.newInstance());
FragmentPagerAdapter fragmentPagerAdapter = new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int position) {
return fragmentList.get(position);
}
@Override
public int getCount() {
return fragmentList.size();
}
};
spinMenu.setFragmentAdapter(fragmentPagerAdapter);
// 設定菜單狀态改變時的監聽器
spinMenu.setOnSpinMenuStateChangeListener(new OnSpinMenuStateChangeListener() {
@Override
public void onMenuOpened() {
Toast.makeText(MainActivity.this, "SpinMenu opened", Toast.LENGTH_SHORT).show();
}
@Override
public void onMenuClosed() {
Toast.makeText(MainActivity.this, "SpinMenu closed", Toast.LENGTH_SHORT).show();
}
});
Attributes
<attr name="scale_ratio" format="float" />
支援頁面縮放大小自定義,建議取值在 3.0 到 5.0 之間
<attr name="hint_text_color" format="color"/>
支援頁面标題文字顔色自定義
<attr name="hint_text_size" format="dimension"/>
支援頁面标題文字大小自定義