[英]RecyclerViewAdapter to New Fragment Transaction
我在代碼部分寫過
主要活動,在主要活動中,有3個片段,片段1、2和3。
在片段1中,我通過使用RecyclerView
適配器顯示URL中的文本和一些圖像。 文本和圖像的總數是27個項目。 這意味着item1(text1, image1)
, item2(text2, image2)
... itemN(textN, imageN)
所以,我想設置一個OnClickListener
,對於工程
//this is pseudo-code
if (text1 is clicked)
{
goto NEW FRAGMENT1;
}
if (text2 is clicked)
{
goto NEW FRAGMENT2;
}
因此,讓我們談談代碼,在我的RecyclerView
我能夠成功識別單擊了哪個項目。 我唯一的問題是,我無法從RecyclerView
轉移到新的Fragment
。 在getSupportFragmentManager
或getFragmentManager
,出現錯誤。
我的代碼的示例代碼:
viewHolder.item_shows.setOnClickListner(new View.OnCliclListner(){
@Override
public void onClick (View view)
{
String itemPosition = String.valueOf(viewHolder.getAdapterPosition());
// item position works fine. Its shows which number item clicked.
// ******** HELP **********}}};
return viewHolder;
--------------------
//In ******** HELP ********** this position I want to create
if(iemPosition.equals("0"))
{open New Fragment1}
if(itemPosition.equals("1"))
{open New Fragment2}
您需要在適配器的構造函數中傳遞活動的引用。 因為getSupportFragmentManager()
是活動類的方法,而不是適配器類。
class MyAdapter(Activity mActivity,ArrayList<Model> list){
}
因此,請像下面那樣使用它來替換您的活動容器中的片段。
mActivity.getSupportFragmentManager()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.