我正在尝试制作一个具有列表视图和其上方带有一些按钮的水平滚动视图的应用程序。 到目前为止,还不错,但是如何使按钮可单击,以便在按下按钮时,例如按钮“ Test”,将文本“ Test”添加到列表视图中?
我只知道如何在“文本输入”区域中执行此操作,所以我很迷茫。
基本上,每按下一个按钮,它自己的文本就会添加到列表视图中。
答案 0 :(得分:0)
尝试一下:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ListView listView = (ListView) findViewById(R.id.listView);
Button button = (Button) findViewById(R.id.button);
final List<String> listViewElements = new ArrayList<String>();
final ArrayAdapter <String> adapter = new ArrayAdapter<String>
(MainActivity.this, android.R.layout.simple_list_item_1,
listViewElements);
listView.setAdapter(adapter);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Button button = (Button)v;
String buttonText = button.getText().toString();
listViewElements.add(buttonText);
adapter.notifyDataSetChanged();
}
});
}
您只需要在按钮上添加一个点击侦听器即可。在onClick
方法中,将所需的条目添加到适配器的ArrayList中,然后调用adapter.notifyDataSetChanged()
重新加载列表视图。此代码假定适配器中的条目为字符串,并将单击的按钮的文本添加到适配器的项目列表中。