Fragment 클래스를 확장하여 Recyclerview를 사용했습니다. 나는 오랫동안 textView를 누르면 팝업 메뉴가 필요합니다. 아래 코드를 표시했습니다. 오류가 없으므로 더 이상 보지 않아도됩니다.Android : 텍스트 뷰를 길게 누르면 팝업 메뉴가 나타납니다.
public class RecyclerViewFragment extends Fragment implements View.OnCreateContextMenuListener {
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
RecyclerView recyclerView = (RecyclerView) inflater.inflate(
R.layout.recycler_view, container, false);
ContentAdapter adapter = new ContentAdapter(recyclerView.getContext());
recyclerView.setAdapter(adapter);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
return recyclerView;
}
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnCreateContextMenuListener {
public ImageView avator;
public TextView name;
public TextView description;
public TextView num;
public View divider;
public ViewHolder(LayoutInflater inflater, ViewGroup parent) {
super(inflater.inflate(R.layout.listing_view, parent, false));
avator = (ImageView) itemView.findViewById(R.id.listing_avatar);
name = (TextView) itemView.findViewById(R.id.listing_title);
description = (TextView) itemView.findViewById(R.id.listing_desc);
num = (TextView) itemView.findViewById(R.id.listing_num) ;
divider= itemView.findViewById(R.id.listing_div);
itemView.setOnCreateContextMenuListener(this);
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
if (v.getId()==R.id.list) {
//AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)menuInfo;
menu.setHeaderTitle("Action");
String[] menuItems = getResources().getStringArray(R.array.arr_menu);
for (int i = 0; i<menuItems.length; i++) {
menu.add(Menu.NONE, i, i, menuItems[i]);
}
}
}
}
리사이클 러 뷰는 어떻게 프래그먼트 클래스를 확장 할 수 있습니까? – Ezio