我的 activity_main.xml 没有显示我的联系人
My activity_main.xml is not showing my contacts
在我的 Android MainActivity class Studio 布局文件中,有一个用于显示我的联系人的布局,但它不再起作用。
布局显示如下:
这是模拟器中显示的内容(注意:我已经添加了联系人)。
我不确定它是否与布局、MainActivity 本身或清单有关。
假定在按钮下方显示联系人的 onCreate
代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
recyclerView = findViewById(R.id.recycler_view);
ContactModel dummy = new ContactModel();
dummy.setName("foo");
dummy.setNumber("123");
arrayList.add(dummy);
adapter = new MainAdapter(this, arrayList);
recyclerView.setAdapter(adapter);
Button add_btn = findViewById(R.id.add_btn);
add_btn.setOnClickListener(v -> startActivity(new Intent(MainActivity.this, Add_Contact.class)));
Button rem_btn = findViewById(R.id.rem_btn);
rem_btn.setOnClickListener(v -> startActivity(new Intent(MainActivity.this, Main_Remove_Contact.class)));
}
这是我的 ContactModel
的样子:
package com.app.wolfix;
public class ContactModel {
String name, number;
public String getName(){
return name;
}
public void setName(String name) { this.name = name; }
public String getNumber() { return number; }
public void setNumber(String number) { this.number = number; }
}
请不要犹豫,询问任何必要的代码,如有必要,我会编辑问题。
提前致谢!
这里有一些错误(在问题的原始版本中):
- 您实际上从未创建过适配器实例
- 您从未将其分配给 RecyclerView
- 您从未向
arrayList
添加任何数据
- 您从未为 RecyclerView 设置布局管理器。
将所有这些放在一起,下面的 onCreate
对我来说适用于您的示例,以显示列表中的虚拟项目。您仍需要在其中某处添加用于填充 arrayList
的实际代码。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
RecyclerView recyclerView = findViewById(R.id.recycler_view);
ContactModel dummy = new ContactModel();
dummy.setName("foo");
dummy.setNumber("123");
arrayList.add(dummy);
adapter = new MainAdapter(this, arrayList);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setAdapter(adapter);
// in your code, you could call something here to populate
// arrayList with real values
}
在我的 Android MainActivity class Studio 布局文件中,有一个用于显示我的联系人的布局,但它不再起作用。
布局显示如下:
这是模拟器中显示的内容(注意:我已经添加了联系人)。
我不确定它是否与布局、MainActivity 本身或清单有关。
假定在按钮下方显示联系人的 onCreate
代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
recyclerView = findViewById(R.id.recycler_view);
ContactModel dummy = new ContactModel();
dummy.setName("foo");
dummy.setNumber("123");
arrayList.add(dummy);
adapter = new MainAdapter(this, arrayList);
recyclerView.setAdapter(adapter);
Button add_btn = findViewById(R.id.add_btn);
add_btn.setOnClickListener(v -> startActivity(new Intent(MainActivity.this, Add_Contact.class)));
Button rem_btn = findViewById(R.id.rem_btn);
rem_btn.setOnClickListener(v -> startActivity(new Intent(MainActivity.this, Main_Remove_Contact.class)));
}
这是我的 ContactModel
的样子:
package com.app.wolfix;
public class ContactModel {
String name, number;
public String getName(){
return name;
}
public void setName(String name) { this.name = name; }
public String getNumber() { return number; }
public void setNumber(String number) { this.number = number; }
}
请不要犹豫,询问任何必要的代码,如有必要,我会编辑问题。
提前致谢!
这里有一些错误(在问题的原始版本中):
- 您实际上从未创建过适配器实例
- 您从未将其分配给 RecyclerView
- 您从未向
arrayList
添加任何数据
- 您从未为 RecyclerView 设置布局管理器。
将所有这些放在一起,下面的 onCreate
对我来说适用于您的示例,以显示列表中的虚拟项目。您仍需要在其中某处添加用于填充 arrayList
的实际代码。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
RecyclerView recyclerView = findViewById(R.id.recycler_view);
ContactModel dummy = new ContactModel();
dummy.setName("foo");
dummy.setNumber("123");
arrayList.add(dummy);
adapter = new MainAdapter(this, arrayList);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setAdapter(adapter);
// in your code, you could call something here to populate
// arrayList with real values
}