zoukankan      html  css  js  c++  java
  • 旋转转盘选择Menu--第三方开源--CircleMenu

     CircleMenu在github上的项目主页是:https://github.com/zhangphil/Android-CircleMenu 

    CircleMenu用法简单,JAVA代码:

    package com.szugyi.circlemenu;
    
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.TextView;
    import android.widget.Toast;
    
    import com.szugyi.circlemenu.view.CircleImageView;
    import com.szugyi.circlemenu.view.CircleLayout;
    import com.szugyi.circlemenu.view.CircleLayout.OnItemClickListener;
    import com.szugyi.circlemenu.view.CircleLayout.OnItemSelectedListener;
    
    public class MainActivity extends Activity implements OnItemSelectedListener, OnItemClickListener{
        
        private    TextView selectedTextView;
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            
            CircleLayout circleMenu = (CircleLayout)findViewById(R.id.main_circle_layout);
            circleMenu.setOnItemSelectedListener(this);
            circleMenu.setOnItemClickListener(this);
    
            //这个TextView仅仅作为演示转盘按钮以何为默认的选中项,
            //默认的最底部的那一条被选中,然后显示到该TextView中。
            selectedTextView = (TextView)findViewById(R.id.main_selected_textView);
            selectedTextView.setText(((CircleImageView)circleMenu.getSelectedItem()).getName());
        }
    
        //圆盘转动到底部,则认为该条目被选中
        @Override
        public void onItemSelected(View view, int position, long id, String name) {        
            selectedTextView.setText(name);
        }
    
        //选择了转盘中的某一条。
        @Override
        public void onItemClick(View view, int position, long id, String name) {
            Toast.makeText(getApplicationContext(), getResources().getString(R.string.start_app) + " " + name, Toast.LENGTH_SHORT).show();
        }
    }

    activity_main.xml:

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:circle="http://schemas.android.com/apk/res/com.szugyi.circlemenu"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity" >
    
        <com.szugyi.circlemenu.view.CircleLayout
            android:id="@+id/main_circle_layout"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_above="@+id/main_selected_textView"
            android:layout_gravity="center_horizontal"
            circle:firstChildPosition="South"
            circle:isRotating="true"
            circle:rotateToCenter="true" >
    
            <!-- circle:circleBackground="@drawable/green"   -->
    
            <com.szugyi.circlemenu.view.CircleImageView
                android:id="@+id/main_facebook_image"
                circle:name="@string/facebook"
                android:layout_width="35dp"
                android:layout_height="35dp"
                android:src="@drawable/icon_facebook" />
    
            <com.szugyi.circlemenu.view.CircleImageView
                android:id="@+id/main_myspace_image"
                circle:name="@string/myspace"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/icon_myspace" />
    
            <com.szugyi.circlemenu.view.CircleImageView
                android:id="@+id/main_google_image"
                circle:name="@string/google"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/icon_google" />
    
            <com.szugyi.circlemenu.view.CircleImageView
                android:id="@+id/main_linkedin_image"
                circle:name="@string/linkedin"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/icon_linkedin" />
    
            <com.szugyi.circlemenu.view.CircleImageView
                android:id="@+id/main_twitter_image"
                circle:name="@string/twitter"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/icon_twitter" />
    
            <com.szugyi.circlemenu.view.CircleImageView
                android:id="@+id/main_wordpress_image"
                circle:name="@string/wordpress"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/icon_wordpress" />
        </com.szugyi.circlemenu.view.CircleLayout>
    
        <TextView
            android:id="@+id/main_selected_textView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:layout_marginBottom="50dp"
            android:textAppearance="?android:attr/textAppearanceLarge" />
    
    </RelativeLayout>
  • 相关阅读:
    linux命令备忘
    java搭建finagle(2)
    记一次Time-Wait导致的问题
    读loadBalance技术的一些笔记
    Immutable.js尝试(node.js勿入)
    python flask 部署
    一个奇怪的html上url参数问题
    xxx-servlet.xml vs applicationContext.xml
    大数据环境安装部署步骤
    数据迁移
  • 原文地址:https://www.cnblogs.com/zzw1994/p/5043733.html
Copyright © 2011-2022 走看看