我正在开发一个有5个按钮的项目,当我点击它们时,它应该显示另外3个按钮。当我点击3个按钮中的任何一个时,它应该打开一个活动。
我曾尝试使用MaterialArcMenu它并没有给我我需要的东西它给了我一个圆形按钮。
我可以就此收到任何建议吗?
按钮1 --->嵌套按钮1 - >嵌套按钮1
---> Nested Button 2
按钮2
按钮3
按钮4
按钮5
答案 0 :(得分:2)
答案 1 :(得分:1)
如果要从布局创建按钮,那么我建议将活动或片段添加为click事件监听器。其次,为按钮设置标签。然后,当单击该按钮时,获取视图的标记并相应地处理。
以下是一个例子:
protected CustomImageButton getSmartLinkImageButton(int buttonImageResource, int colorToChangeTo, boolean isLargerImage, ActionType buttonAction) {
LayoutInflater inflater = (LayoutInflater) this.getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
SmartLinkImageButton button = (SmartLinkImageButton) inflater.inflate(R.layout.footer_smartlink_image_button, null);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(mFooterButtonWidth,
isLargerImage == true ? mFooterButtonHeight / 2 : mFooterButtonHeight);
params.gravity = Gravity.CENTER;
button.setLayoutParams(params);
if(isLargerImage)
button.setScaleType(ScaleType.FIT_CENTER);
button.setImageResource(buttonImageResource);
if(colorToChangeTo > 0) {
changeImageViewImageColor(button, null, colorToChangeTo);
button.setDefaultColorFilter(colorToChangeTo);
}
button.setTag(buttonAction); //HERE IS THE TAG CREATION
button.setOnClickListener(this);
//optional method for mapping image buttons
mapImageButton(button, buttonAction);
inflater = null;
return button;
}
然后是onClick:
@Override
public void onClick(View view) {
view.getTag(); //DO ACTION BASED ON VIEWS TAG
}