Android 二级菜单
2013-06-26 19:14
393 查看
private void showPop(View v) {
// 布局
if (lvTWOPostion!=0) {
}
relativeLayout3.setVisibility(View.VISIBLE);
final UnMoveListView lv1 = (UnMoveListView) view
.findViewById(R.id.merchant_pop_lv1);
lv1.setItemsCanFocus(false);
final UnMoveListView lv2 = (UnMoveListView) view
.findViewById(R.id.merchant_pop_lv2);
lv2.setItemsCanFocus(false);
final ArrayList<MerchantPopupType> types = new ArrayList<MerchantPopupType>();//一级数据
//一级实体
MerchantPopupType merchantType = new MerchantPopupType();
//一级实体添加
merchantType.setName("全部分类");
//二级实体
MerchantPopupType.SecondType secType = merchantType.new SecondType();
//耳机实体子菜单
secType.setSecName("全部分类");
//二级添加到2及
merchantType.getSecTypes().add(secType);
types.add(merchantType);
/**
* 美食一级分类
*/
merchantType = new MerchantPopupType();
merchantType.setName("美食");
/**
* 美食二级分类
*/
secType = merchantType.new SecondType();
secType.setSecName("全部美食");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("本江浙菜");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("湘菜");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("粤菜");
merchantType.getSecTypes().add(secType);
types.add(merchantType);
/**
* 购物一级分类
*/
merchantType = new MerchantPopupType();
merchantType.setName("购物");
/**
* 购物二级分类
*/
secType = merchantType.new SecondType();
secType.setSecName("全部购物");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("服饰鞋包");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("化妆品");
merchantType.getSecTypes().add(secType);
types.add(merchantType);
merchantType = new MerchantPopupType();
merchantType.setName("休闲娱乐");
secType = merchantType.new SecondType();
secType.setSecName("全部娱乐");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("咖啡厅");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("酒吧");
merchantType.getSecTypes().add(secType);
types.add(merchantType);
ArrayList<Map<String, Object>> firList = new ArrayList<Map<String, Object>>();
String[] lv1Array =new String[]{"全部分类","美食","休闲","娱乐","购物"} ;
for (int i = 0; i < lv1Array.length; i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("name", lv1Array[i]);
firList.add(map);
}
final ArrayList<Map<String, Object>> secList2 = new ArrayList<Map<String, Object>>();
for (int i = 0; i < types.size(); i++) {
MerchantPopupType merchantType2 = types.get(i);
Map<String, Object> map = new HashMap<String, Object>();
map.put("name", merchantType2.getName());
firList.add(map);
}
final MySimpleAdapter firAdapter = new MySimpleAdapter(mActivity,
firList, R.layout.merchant_popup_type_item,
new String[] { "name" }, new int[] { R.id.orderchild },
new AdapterListener() {
@Override
public void addListener(int position, View convertView,
Object... objects) {
if (lvPostion == position) {
LinearLayout line_popwin = (LinearLayout) convertView
.findViewById(R.id.line_popwin);
line_popwin
.setBackgroundResource(R.color.litghtbule);
} else {
convertView.setBackgroundColor(0);
}
}
});
lv1.setAdapter(firAdapter);
lv1.setOnItemClickListener(new OnItemClickListener() {
TextView line_popwin;
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
lvPostion = arg2;
firAdapter.notifyDataSetChanged();
ArrayList<Map<String, Object>> secList = new ArrayList<Map<String, Object>>();
MerchantPopupType type = types.get(arg2);
for (int j = 0; j < type.getSecTypes().size(); j++) {
MerchantPopupType.SecondType secType2 = type.getSecTypes()
.get(j);
Map<String, Object> map = new HashMap<String, Object>();
map.put("name2", secType2.getSecName());
secList.add(map);
}
MySimpleAdapter secAdapter = new MySimpleAdapter(mActivity,
secList, R.layout.merchant_popup_type_item,
new String[] { "name2" }, new int[] { R.id.orderchild },
new AdapterListener() {
@Override
public void addListener(int position, View convertView, Object... objects) {
}
});
lv2.setAdapter(secAdapter);
}
});
final MySimpleAdapter secAdapter = new MySimpleAdapter(mActivity,
firList, R.layout.merchant_popup_type_item,
new String[] { "name2" }, new int[] { R.id.orderchild },
new AdapterListener() {
@Override
public void addListener(int position, View convertView,
Object... objects) {
if (lvTWOPostion == position){
TextView line_popwin = (TextView) convertView
.findViewById(R.id.orderchild);
line_popwin
.setTextColor(Color.BLUE);
System.out.println("变色");
} else {
convertView.setBackgroundColor(0);
}
}
});
// 2层
lv2.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
lvTWOPostion = arg2;
secAdapter.notifyDataSetChanged();
String typeString = lv2.getItemAtPosition(arg2).toString();
String typeselet = typeString.substring(7,
typeString.length() - 1);
typeButton.setText(typeselet);
relativeLayout3.setVisibility(View.GONE);
typeButton.setTextColor(Color.BLACK);
merchantsListView.setEnabled(true);
typeButton.setBackgroundResource(R.drawable.selector_spinner03);
CHOICENUM=0;
}
});
}
转载自:http://www.eoeandroid.com/thread-230963-1-1.html
// 布局
if (lvTWOPostion!=0) {
}
relativeLayout3.setVisibility(View.VISIBLE);
final UnMoveListView lv1 = (UnMoveListView) view
.findViewById(R.id.merchant_pop_lv1);
lv1.setItemsCanFocus(false);
final UnMoveListView lv2 = (UnMoveListView) view
.findViewById(R.id.merchant_pop_lv2);
lv2.setItemsCanFocus(false);
final ArrayList<MerchantPopupType> types = new ArrayList<MerchantPopupType>();//一级数据
//一级实体
MerchantPopupType merchantType = new MerchantPopupType();
//一级实体添加
merchantType.setName("全部分类");
//二级实体
MerchantPopupType.SecondType secType = merchantType.new SecondType();
//耳机实体子菜单
secType.setSecName("全部分类");
//二级添加到2及
merchantType.getSecTypes().add(secType);
types.add(merchantType);
/**
* 美食一级分类
*/
merchantType = new MerchantPopupType();
merchantType.setName("美食");
/**
* 美食二级分类
*/
secType = merchantType.new SecondType();
secType.setSecName("全部美食");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("本江浙菜");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("湘菜");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("粤菜");
merchantType.getSecTypes().add(secType);
types.add(merchantType);
/**
* 购物一级分类
*/
merchantType = new MerchantPopupType();
merchantType.setName("购物");
/**
* 购物二级分类
*/
secType = merchantType.new SecondType();
secType.setSecName("全部购物");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("服饰鞋包");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("化妆品");
merchantType.getSecTypes().add(secType);
types.add(merchantType);
merchantType = new MerchantPopupType();
merchantType.setName("休闲娱乐");
secType = merchantType.new SecondType();
secType.setSecName("全部娱乐");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("咖啡厅");
merchantType.getSecTypes().add(secType);
secType = merchantType.new SecondType();
secType.setSecName("酒吧");
merchantType.getSecTypes().add(secType);
types.add(merchantType);
ArrayList<Map<String, Object>> firList = new ArrayList<Map<String, Object>>();
String[] lv1Array =new String[]{"全部分类","美食","休闲","娱乐","购物"} ;
for (int i = 0; i < lv1Array.length; i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("name", lv1Array[i]);
firList.add(map);
}
final ArrayList<Map<String, Object>> secList2 = new ArrayList<Map<String, Object>>();
for (int i = 0; i < types.size(); i++) {
MerchantPopupType merchantType2 = types.get(i);
Map<String, Object> map = new HashMap<String, Object>();
map.put("name", merchantType2.getName());
firList.add(map);
}
final MySimpleAdapter firAdapter = new MySimpleAdapter(mActivity,
firList, R.layout.merchant_popup_type_item,
new String[] { "name" }, new int[] { R.id.orderchild },
new AdapterListener() {
@Override
public void addListener(int position, View convertView,
Object... objects) {
if (lvPostion == position) {
LinearLayout line_popwin = (LinearLayout) convertView
.findViewById(R.id.line_popwin);
line_popwin
.setBackgroundResource(R.color.litghtbule);
} else {
convertView.setBackgroundColor(0);
}
}
});
lv1.setAdapter(firAdapter);
lv1.setOnItemClickListener(new OnItemClickListener() {
TextView line_popwin;
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
lvPostion = arg2;
firAdapter.notifyDataSetChanged();
ArrayList<Map<String, Object>> secList = new ArrayList<Map<String, Object>>();
MerchantPopupType type = types.get(arg2);
for (int j = 0; j < type.getSecTypes().size(); j++) {
MerchantPopupType.SecondType secType2 = type.getSecTypes()
.get(j);
Map<String, Object> map = new HashMap<String, Object>();
map.put("name2", secType2.getSecName());
secList.add(map);
}
MySimpleAdapter secAdapter = new MySimpleAdapter(mActivity,
secList, R.layout.merchant_popup_type_item,
new String[] { "name2" }, new int[] { R.id.orderchild },
new AdapterListener() {
@Override
public void addListener(int position, View convertView, Object... objects) {
}
});
lv2.setAdapter(secAdapter);
}
});
final MySimpleAdapter secAdapter = new MySimpleAdapter(mActivity,
firList, R.layout.merchant_popup_type_item,
new String[] { "name2" }, new int[] { R.id.orderchild },
new AdapterListener() {
@Override
public void addListener(int position, View convertView,
Object... objects) {
if (lvTWOPostion == position){
TextView line_popwin = (TextView) convertView
.findViewById(R.id.orderchild);
line_popwin
.setTextColor(Color.BLUE);
System.out.println("变色");
} else {
convertView.setBackgroundColor(0);
}
}
});
// 2层
lv2.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
lvTWOPostion = arg2;
secAdapter.notifyDataSetChanged();
String typeString = lv2.getItemAtPosition(arg2).toString();
String typeselet = typeString.substring(7,
typeString.length() - 1);
typeButton.setText(typeselet);
relativeLayout3.setVisibility(View.GONE);
typeButton.setTextColor(Color.BLACK);
merchantsListView.setEnabled(true);
typeButton.setBackgroundResource(R.drawable.selector_spinner03);
CHOICENUM=0;
}
});
}
转载自:http://www.eoeandroid.com/thread-230963-1-1.html
相关文章推荐
- android BaseExpandableListAdapter 二级菜单适配器
- android 点击button 出现popupwindow的二级联动菜单
- Android 二级动画弹出菜单
- Android实现横向二级菜单
- Android Laucher3 去掉二级菜单
- Android二级列表菜单框架
- android实现底部导航栏和顶部导航栏(相当于网页上的一级菜单和二级菜单)
- Android中实现二级菜单
- 二级菜单在android模拟中无法使用,在真机上可以使用
- Android自定义二级联动菜单
- Android横向二级联动菜单的实现
- Android 自定义HorizontalScrollView实现二级菜单
- Android菜单按钮和二级菜单
- Android 二级菜单最终版
- Android 使用BRVAH 实现二级菜单。类似QQ分组
- Android 二级串联菜单的实现过程
- 模仿Android通讯录布局(二级菜单)
- android 二级菜单、双ListView 仿美团、购物App二级菜单
- android 二级菜单(类似QQ分组)
- android 二级菜单的实现