[英]RecyclerView of cards not showing anything
我正在通過創建一個todo應用程序來嘗試通過支持庫的recyclerview和cardview來加載通過sqlite db持久保存的任務項。
每張卡均包含任務描述字符串和右上角的“ x”圖像,以將其從recyclerview中移除。
我正在測試第一部分,添加一個任務。 當按下commit時,我在調試器中看到該任務已持久。 然后,我調用adapter.notifyItemAdded,傳入數據源的最新索引。 該應用程序運行后不顯示任何卡,並且在logcat中未顯示任何錯誤。
MyActivity.xml:
....a bunch of RoboGuice injections
@InjectView(R.id.palettePurple)
private RelativeLayout palettePurple;
private ImageView deleteBtn;
private String currentColor;
TaskAdapter adapter;
List<Task> allTasks;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
// register click listeners, "this" activity will listen for clicks on these views
editBtn.setOnClickListener(this);
submitBtn.setOnClickListener(this);
deleteBtn.setOnClickListener(this);
paletteRed.setOnClickListener(this);
paletteOrange.setOnClickListener(this);
paletteGreen.setOnClickListener(this);
paletteRoyalBlue.setOnClickListener(this);
palettePurple.setOnClickListener(this);
RecyclerView recList = (RecyclerView) findViewById(R.id.tasksRV);
recList.setHasFixedSize(true);
LinearLayoutManager llm = new LinearLayoutManager(this);
llm.setOrientation(LinearLayoutManager.VERTICAL);
recList.setLayoutManager(llm);
allTasks = Task.getAll();
adapter = new TaskAdapter(allTasks);
recList.setAdapter(adapter);
}
....menu overrides....
@Override
public void onClick(View v) {
Log.d("TRACE", "inside onClick");
....handling other clicks....
// submit button was clicked, create a new task
else if(v.getId() == R.id.submitBtn) {
String taskDescription = taskET.getText().toString();
Task newTask = new Task(taskDescription, currentColor);
newTask.save();
int lastIndex = allTasks.size()-1;
adapter.notifyItemInserted(lastIndex);
editSection.setVisibility(View.GONE);
editBtn.setVisibility(View.VISIBLE);
}
}
}
我的卡xml和適配器java: 如何獲得RecyclerView中選定的位置?
我很確定android studio支持recyclerview。 在您的項目build.gradle
文件中添加:
dependencies {
...
compile 'com.android.support:cardview-v7:23.0.1'
compile 'com.android.support:recyclerview-v7:23.0.1'
}
這是一個美麗的博客,您可以在其中學習和使用recyclerview和cardview: http : //www.binpress.com/tutorial/android-l-recyclerview-and-cardview-tutorial/156
希望對您有所幫助。
更新
版本號可以隨時更改。 獲得最新消息的最佳方法:
右鍵單擊項目->打開模塊設置->轉到模塊部分,然后選擇模塊->在右側轉到“依賴項選項卡”->單擊“ +”按鈕,選擇“庫依賴項”->搜索所需的庫並添加。
確保您的SDK的支持存儲庫和支持庫已更新。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.