У меня есть listView и я хочу при долгом нажатии показать мой пользовательский диалог. Как мне кот сделать это? Все мои попытки ничего не принесли мне. Диалог никогда не показывает, ANR происходит.
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
ExpandableListView.ExpandableListContextMenuInfo info = (ExpandableListView.ExpandableListContextMenuInfo) menuInfo;
int type = ExpandableListView.getPackedPositionType(info.packedPosition);
int group = ExpandableListView.getPackedPositionGroup(info.packedPosition);
int child = ExpandableListView.getPackedPositionChild(info.packedPosition);
if (type == 1) {
menu.add("rating");
}
}
@Override
public boolean onContextItemSelected(MenuItem menuItem) {
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
int rating = msg.arg1;
System.out.println("Rating = " + rating);
}
};
System.out.println("Create rating dialog");
Toast.makeText(MyListActivity.this, "Ass", Toast.LENGTH_SHORT).show();
// new RatingDialog(MyListActivity.this, handler).show();
return super.onContextItemSelected(menuItem);
}
Диалог рейтинга никогда не показывается, тост работает отлично. Необходимо показать контекстное меню перед диалогом, или я могу запустить свой диалог из onCreateContextMenu ()?
Спасибо!