采取onItemClick在一个片段的位置
问题描述:
我想实现一个片段内的onItemClick,当点击一个元素,但我没有结果,但有人可以帮助我?采取onItemClick在一个片段的位置
public class FotoFragment extends Fragment {
private List<DataPictures> mediaList = new ArrayList<>();
private RecyclerView mRecyclerView;
private MediaRVAdapter adapter;
public FotoFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_blank, container, false);
mRecyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
mRecyclerView.setLayoutManager(new GridLayoutManager(getActivity(), 3));
mRecyclerView.setPadding(10,10,10,10);
mRecyclerView.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
Toast.makeText(v.getContext(), "Intent onLongClick= ", Toast.LENGTH_SHORT).show();
return false;
}
});
return view;
}
这是我的XML fragment_blank
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent">
</android.support.v7.widget.RecyclerView>
我试图做一个多选照片的权力,但我已经看到了你可以用onItemClick方法去做,做所以
public void onItemClick(AdapterView parent,View view,int position,long id){
如何获得该元素的位置?使用onLongClick方法?
答
试试这个
的onclick可以在适配器
private Listener mListener;
使用自定义接口
interface Listener {
void performOperation(int Position);
}
被achived在适配器初始化听者在构造这样
mListener = (Listener) context;
在你bindViewHolder方法
holder.yourView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mListener.performOperation(position);
}
});
现在,在您的片段实施这样
public class FotoFragment extends Fragment implements listner {
@Override
public void performOperation(int Position) {
//Do whatever you want to do with this position
}
}
您可以在界面只需点击使用上面的代码,你需要实现内部适配器 –
希望实现onItemClick点击事件listner,但你正在实现onLongClick ...为什么? – AbhayBohra
显示你的'MediaRVAdapter' –