我最近开始制作一个 Android 应用程序,它需要一个包含 20 个名称的列表和每个名称的计数器,两者都显示在屏幕上。每当有人点击一个名字时,该名字的计数器就会增加一。这意味着名称和计数器需要以某种方式“连接”。
我首先使用ListView
. 这是我的代码:
public class ExampleActivity extends ListActivity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String[] NAMES = getResources().getStringArray(R.array.names_array);
setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, NAMES));
ListView lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (position == 0) //Shows toast with name
Toast.makeText(getApplicationContext(), ((TextView) view).getText(), Toast.LENGTH_SHORT).show();
}
});
}
}
这是 list_item.xml 文件:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:textSize="16sp" >
</TextView>
现在我正在寻找一种在列表中显示计数器的方法。在我看来,最用户友好的应该是一个列表,其中名称显示在左侧(目前是这种情况),它们的计数器在右侧(与名称在一行;列表中的对齐不是我的问题)。
但是,由于我只是 Android 的初学者,我不知道如何解决这个问题。我的第一个问题是我不知道如何以某种方式将我的 20 个名称列表与 20 个整数列表合并,并使这些整数特定于每个名称。我的第二个问题是如何在屏幕上显示所有这些。