0

我在我的應用程序中有一個recylerview,但我能夠獲得每個項目的位置,但是我不太清楚如何從recylerview獲取位置的上下文;獲取recylerview項目而不是其位置的上下文android

mRecyclerView.addOnItemTouchListener(
      new RecyclerItemClickListener(getActivity(), new RecyclerItemClickListener.OnItemClickListener() { 

       @Override 
       public void onItemClick(View view, int position) { 
        Snackbar.make(view, "clicked" + " " + position, Snackbar.LENGTH_LONG).setAction("Action", null).show(); 
       } 
      }) 
    ); 

另外,每個項目/列的結構都包含一個textView,我正在向其中添加數據;

list.add(new itemtoadd("John Smith" + "\nMale" + "\nSingle」)); 

我想要做的是,因爲我只有一個TextView中包含3組數據姓名+性別+地位,同時獲得位置的情況下,我想只能從它那裏得到1個數據,例如人的名字。

編輯:

現在我已經寫了代碼獲取recylerview項目的位置,例如它會說按下1,我想要做的就是俗話點擊1相反,我希望它得到例如,在這種情況下獲得'約翰史密斯,男性,單身'

我的意思是說,例如,我有這個數據在我的recylerview;

list.add(new itemtoadd("John Smith0" + "\nMale0" + "\nSingle0」)); 
list.add(new itemtoadd("John Smith1" + "\nMale1" + "\nSingle1」)); 
list.add(new itemtoadd("John Smith1" + "\nMale1" + "\nSingle1」)); 
在這種情況下

,我添加到我的recylerview第一個數據是在位置0,而不是打印出「位置0」我想在poition 0,在這種情況下將數據;約翰史密斯0,男0,單身0。

+1

你是什麼意思的「位置的背景」?你需要它在哪裏? – Kelevandos

+0

您確切的需求是什麼?在位置上的背景是什麼意思? – kiturk3

+0

請參閱編輯,如果它仍然沒有意義,讓我知道,我會嘗試更好地解釋它 – Henry

回答

1

用你的模型對象itemtoadd檢索您的數據,而不是TextView

@Override 
public void onItemClick(View view, int position) { 

    Snackbar.make(view, "clicked" + " " + position, Snackbar.LENGTH_LONG).setAction("Action", null).show(); 

    itemtoadd yourItem = list.get(position); // here you get your clicked model item 

    // then you can get the String value from your "itemtoadd" model. 
} 

編輯:

下面是一個例子你itemtoadd模型如何爲:

public class itemtoadd { 

    private String mName; 
    private String mGender; 
    private String mStatus; 


    public itemtoadd(String name, String gender, String status){ 
     mName = name; 
     mGender = gender; 
     mStatus = status; 
    } 

    public String getName(){ 
     return mName; 
    } 

    public String getGender(){ 
     return mGender; 
    } 

    public String getStatus(){ 
     return mStatus; 
    } 

    public String getPersonInformation(){ 
     return getName()+"\n"+getGender()+ "\n"+getStatus(); 
    } 

} 

隨着上面的課程,你可以得到你的名稱性別狀態分別yourItem.getName()yourItem.getGender()yourItem.getStatus()

+0

嗨謝謝你的答案,什麼是itemtoadd指的是? – Henry

+0

,因爲當我寫itemtoadd它說無法解決符號itemtoadd – Henry

+0

在你的OP中,有'list.add(新itemtoadd(「約翰史密斯」+「\ nMale」+「\ nSingle」)',所以我假設你有模型對象名爲*「itemtoadd」*,是嗎? – Rami

相關問題