我正在开发一个应用程序,如谷歌播放音乐! 事情就像那个应用程序,我在我的GridView上的每一行都有一个popupmenu。 我从片段实现onClickListener设置网格视图适配器。 的问题是: 如何设置onclicklistener每个弹出菜单和处理来自片段 onclick事件我的弹出菜单包含两个项目: DELETE 添加到播放列表我怎样才能setOnClickListener在适配器和从片段访问?
我想从片段访问的onClick的原因是我想删除具有notifydatasetchanged()的特定文件和更新网格视图!
我怎么能做到这一点或任何建议对如何从适配器n更新网格视图删除特定文件!
谢谢!
这是我的GridView适配器:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = convertView;
ViewHolder holder;
item = songs.get(position);
if (row == null) {
LayoutInflater inflater = ((Activity) context).getLayoutInflater();
row = inflater.inflate(com.irangrammy.irangrammy.R.layout.mchannel_row, parent, false);
holder = new ViewHolder();
holder.thumbnail = (ImageView) row.findViewById(com.irangrammy.irangrammy.R.id.image);
holder.title = (TextView) row.findViewById(com.irangrammy.irangrammy.R.id.singer);
holder.mMenu = (ImageView) row.findViewById(R.id.itemOption);
holder.mMenu.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
PopupMenu popUp = new PopupMenu(context, v);
MenuInflater inflater = popUp.getMenuInflater();
inflater.inflate(R.menu.mchannel_popup, popUp.getMenu());
popUp.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem arg0) {
// TODO Auto-generated method stub
if(arg0.getItemId()==R.id.delete)
{
}
return true;
}
});
popUp.show();
}
});
row.setTag(holder);
} else {
holder = (ViewHolder) row.getTag();
}
使用的界面或通过您的片段适配器 – 2014-12-06 09:58:20
类@shayanpourvatan我通过片段到我的适配器类,但它不工作!你可以给我举例如何将片段传递给适配器n在适配器类中检索它? – 2014-12-06 10:05:40
通过您的片段适配器类,而不是创建新的OnClickListener投你的片段onClickListener,我不知道有关,但你可以尝试 – 2014-12-06 10:17:06