CircularMenu
介绍:
可高度自定义的奇葩菜单控件(可自定义中心view,通过adapter控制itemview,menu数量,中心圆大小,中心圆环大小。。。)
运行效果:
使用说明:
MainActivity
package sunger.net.org;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import org.sunger.net.view.CircularMenu;
import sunger.net.org.a.R;
public class MainActivity extends AppCompatActivity {
private CircularMenu wheelMenuView;
private EditText editText1, editText2, editText3, editText4, editText5, editText6;
private Button button;
private PanAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
wheelMenuView = (CircularMenu) findViewById(R.id.panview);
// wheelMenuView = new WheelMenuView(this);
// setContentView(wheelMenuView);
// wheelMenuView.setLineWidth(20);
// wheelMenuView.setItemCount(6);
// wheelMenuView.setBackgroundColor(Color.BLACK);
// wheelMenuView.setPressedColor(Color.BLUE);
// wheelMenuView.setRadius(300);
// wheelMenuView.setInnerRadius(120);
// wheelMenuView.setItemColor(Color.CYAN);
// wheelMenuView.setCenterView(R.layout.center_layout);
// wheelMenuView.setRadiusLineWidth(20);
// wheelMenuView.setStartAngle(5);
adapter = new PanAdapter();
wheelMenuView.setAdapter(adapter);
editText1 = (EditText) findViewById(R.id.editText1);
editText2 = (EditText) findViewById(R.id.editText2);
editText3 = (EditText) findViewById(R.id.editText3);
editText4 = (EditText) findViewById(R.id.editText4);
editText5 = (EditText) findViewById(R.id.editText5);
editText6 = (EditText) findViewById(R.id.editText6);
button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//大圆半径
float radius = Float.valueOf(editText1.getText().toString());
float innerRadius = Float.valueOf(editText2.getText().toString());
//线条宽度
float lineWidth = Float.valueOf(editText3.getText().toString());
//内圆线宽度
float radiusLineWidth = Float.valueOf(editText4.getText().toString());
int itemCount = Integer.valueOf(editText5.getText().toString());
int startAngle = Integer.valueOf(editText6.getText().toString());
wheelMenuView.setInnerRadius(innerRadius);
wheelMenuView.setLineWidth(lineWidth);
wheelMenuView.setItemCount(itemCount);
wheelMenuView.setStartAngle(startAngle);
wheelMenuView.setRadiusLineWidth(radiusLineWidth);
wheelMenuView.setRadius(radius);
}
});
}
}
PanAdapter
package sunger.net.org;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import sunger.net.org.a.R;
/**
* Created by sunger on 16/1/26.
*/
public class PanAdapter extends BaseAdapter {
@Override
public int getCount() {
return 6;
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
TextView textView = (TextView) LayoutInflater.from(parent.getContext()).inflate(R.layout.item_view, null,false);
textView.setText("Item" + position);
return textView;
}
}
已下载
0