我跟隨tutorial導航到我的應用程序抽屜,這很好。如何添加微調器到RecyclerView
該模式涉及使用包含圖像和一些TextViews
的標頭填充RecyclerView
的第一個位置。這很好,但現在我想在其中添加一個Spinner
,但是無法理解如何設置它。
問題是當我創建dataAdapter,我得到「無法解析構造函數」。我認爲這是由於未正確提供Context
?
ArrayAdapter<String> dataAdapter =new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,list);
在這一點上我在RecyclerAdapter
內ViewHolder
類,所以「這」不是一個Activity
。我得到,你可以使用parent.this或活動name.this但這似乎並不正確(並且不起作用!)。
如何繞過「無法解析構造函數」錯誤?
以下是我的RecyclerAdapter
中的整個onBindViewHolder
。
@Override
public void onBindViewHolder(navigationDrawerAdapter.ViewHolder holder, int position) {
if(holder.HolderID ==1) {
holder.textView.setText(mNavTitles[position - 1]); // Setting the Text with the array of our Titles
holder.imageView.setImageResource(mIcons[position -1]);// Settimg the image with array of our icons
}
else{
holder.imageProfile.setImageResource(profile);
holder.textName.setText(name);
holder.textEmail.setText(email);
List<String> list = new ArrayList<String>();
list.add("TEST");
ArrayAdapter<String> dataAdapter =new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
holder.siteSpinner = (Spinner) findViewById(R.id.siteSpinner);
holder.siteSpinner.setAdapter(dataAdapter);
}
}
另外,這是正確的做法嗎?我想知道在一個位置創建一個「標題」是一個好方法嗎?另一種方法是爲我的導航抽屜創建一個LinearLayout
,其中一個接一個地有Spinner
和RecyclerView
?
感謝,林不知道我遵循有關我的調用方法創建的DataAdapter的一部分。然而,將活動對象傳遞到我的回收站適配器似乎工作。我讀過這不是最有效的做事方式? – jezza101